sql自增长设置与删除的深入分析
网络编程 2021-07-05 15:27www.168986.cn编程入门
本篇文章是对sql自增长设置与删除进行了详细的分析介绍,需要的朋友参考下
identity(1,1)是指每插入一条语句时这个字段的值增1,
语法
IDENTITY [ ( seed , increment ) ]
参数
seed
装载到表中的第一个行所使用的值(标示种子)。
increment
增量值,该值被添加到前一个已装载的行的标识值上(标示增量)。
必须指定种子和增量,或者二者都不指定。如果二者都未指定,则取默认值 (1,1)。
例如
create table WorkRoom
(WorkRoomID int not null identity(1,1) primary key,
WorkRoomName Varchar(50) null,
TeacherName Varchar(10) null,
WorkRoomManager Varchar(10) null,
WorkRoomPlan Varchar(max) null,
Purl Varchar(50) null,
Remarks Varchar(max) null,
)
修改s创建标示和删除标示:
ALTER TABLE TABLENAME DROP COLUMN ID
ALTER TABLE TABLENAME ADD ID int identity(1,1) not null
如何用sql语句去掉列的自增长(identity)
========================================
如何用sql语句去掉列的自增长(identity),取消标识命令
无法通过alter把现有自增字段改为非自增
比如alter table a alter id int,自增属性不会去掉
通过修改系统表可以做到(此法可能有不可预知的结果,慎之...)
sp_configure 'allow updates', 1
GO
reconfigure with override
GO
update syscolumns set colstat = colstat & 0x0000
where id=o b j e c t_id('表名') and name='字段名'
GO
sp_configure 'allow updates', 0
---------------------------------
--折中的办法
alter table a add xxx int
update a set xxx=id
alter table a drop column id
exec sp_rename 'xxx', 'id', 'column'
========================================
第一个方法是可以去掉,但以后可能会导致出问题,建议用第二个方法,我用的语句现在也贴出来,也许需要的朋友有些用处
删除表 zx_user 中字段 userid 的自增长属性方法
//新建临时字段
alter table zx_user add useridtmp int null
//赋值
update zx_user set useridtmp =userid
//删除主键
alter table zx_user drop pk_zx_user
//删除字段
alter table zx_user drop column userid
//增加字段
alter table zx_user add userid int null
//把值还原回来
update zx_user set userid = useridtmp
//删除临时字段
alter table zx_user drop column useridtmp
//修改新建字段不为空
alter table zx_user alter column userid int not null
//健主键,多个字段做主键,用逗号隔开,比如primary key (userid,xxxxxx)
alter table zx_user add primary key (userid)
========================================
删除主键时候,不知道你主键名字,请用一下方法查询
select from syso b j e c ts where xtype='PK
语法
IDENTITY [ ( seed , increment ) ]
参数
seed
装载到表中的第一个行所使用的值(标示种子)。
increment
增量值,该值被添加到前一个已装载的行的标识值上(标示增量)。
必须指定种子和增量,或者二者都不指定。如果二者都未指定,则取默认值 (1,1)。
例如
create table WorkRoom
(WorkRoomID int not null identity(1,1) primary key,
WorkRoomName Varchar(50) null,
TeacherName Varchar(10) null,
WorkRoomManager Varchar(10) null,
WorkRoomPlan Varchar(max) null,
Purl Varchar(50) null,
Remarks Varchar(max) null,
)
修改s创建标示和删除标示:
ALTER TABLE TABLENAME DROP COLUMN ID
ALTER TABLE TABLENAME ADD ID int identity(1,1) not null
如何用sql语句去掉列的自增长(identity)
========================================
如何用sql语句去掉列的自增长(identity),取消标识命令
无法通过alter把现有自增字段改为非自增
比如alter table a alter id int,自增属性不会去掉
通过修改系统表可以做到(此法可能有不可预知的结果,慎之...)
sp_configure 'allow updates', 1
GO
reconfigure with override
GO
update syscolumns set colstat = colstat & 0x0000
where id=o b j e c t_id('表名') and name='字段名'
GO
sp_configure 'allow updates', 0
---------------------------------
--折中的办法
alter table a add xxx int
update a set xxx=id
alter table a drop column id
exec sp_rename 'xxx', 'id', 'column'
========================================
第一个方法是可以去掉,但以后可能会导致出问题,建议用第二个方法,我用的语句现在也贴出来,也许需要的朋友有些用处
删除表 zx_user 中字段 userid 的自增长属性方法
//新建临时字段
alter table zx_user add useridtmp int null
//赋值
update zx_user set useridtmp =userid
//删除主键
alter table zx_user drop pk_zx_user
//删除字段
alter table zx_user drop column userid
//增加字段
alter table zx_user add userid int null
//把值还原回来
update zx_user set userid = useridtmp
//删除临时字段
alter table zx_user drop column useridtmp
//修改新建字段不为空
alter table zx_user alter column userid int not null
//健主键,多个字段做主键,用逗号隔开,比如primary key (userid,xxxxxx)
alter table zx_user add primary key (userid)
========================================
删除主键时候,不知道你主键名字,请用一下方法查询
select from syso b j e c ts where xtype='PK
编程语言
- 甘肃哪有关键词排名优化购买方式有哪些
- 甘肃SEO如何做网站优化
- 河南seo关键词优化怎么做电话营销
- 北京SEO优化如何做QQ群营销
- 来宾百度关键词排名:提升您网站曝光率的关键
- 卢龙关键词优化:提升您网站排名的策略与技巧
- 山东网站优化的注意事项有哪些
- 四川整站优化怎样提升在搜索引擎中的排名
- 疏附整站优化:提升网站性能与用户体验的全新
- 海南seo主要做什么工作售后服务要做到哪些
- 荣昌百度网站优化:提升您网站的搜索引擎排名
- 河北seo网站排名关键词优化如何做SEO
- 江西优化关键词排名推广售后保障一般有哪些
- 古浪SEO优化:提升你的网站可见性
- 西藏网站排名优化怎么把网站排名在百度首页
- 如何提升阳东百度快照排名:详尽指南