sql修改表的主键 自增

--修改表
alter table veg_tab
--删除表要自增列
drop column id
--修改表
alter table veg_tab
--添加表要自增列
add id int identity(1,1)

 

--修改表主键
ALTER  TABLE veg_tab ADD   CONSTRAINT veg_tab_id  PRIMARY KEY  (id)

--删除表主键
ALTER  TABLE add_tab DROP CONSTRAINT veg_tab_id

 

 

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[主键名]') and OBJECTPROPERTY(object_id(N'[列名]'), N'IsPrimaryKey') = 1)
ALTER  TABLE 表名 DROP  CONSTRAINT [主键名]
ALTER  TABLE 表名 ADD   CONSTRAINT [新主键名] PRIMARY   KEY  ([列名])

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[PK_orders]') and OBJECTPROPERTY(OBJECT_ID(N'dbo.[orders].[pi_no]'), N'IsPrimaryKey') = 1)
ALTER  TABLE orders DROP  CONSTRAINT [PK_orders]
ALTER  TABLE orders ADD   CONSTRAINT [PK_orders] PRIMARY KEY  ([form_no]) ON  [PRIMARY]


/*
--首先要在系统表里找到该列名的英文名
select name from sysobjects where xtype='Pk' and parent_obj=object_id('表名')
--select object_id('goods')
--select object_name(2137058649)
--如果有外键约束要还要先删除外键(注:如果不知道是否有外键约束可以先运行删除主键语句)
alter table orders drop constraint FK__Orders__货品名称__0425A276
--然后才可删除
alter table goods drop constraint  列表的英文名
--修改
ALTER TABLE 你的表 ALTER COLUMN 列名 你的类型
go
--增加
alter table 你的表 add constraint 主键名 primary key (列名)
*/

posted @   netPisces  阅读(3878)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示