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
sql自增长设置与删除的深入分析
2019-12-26 15:08MYSQL教程网 Mysql
本篇文章是对sql自增长设置与删除进行了详细的分析介绍,需要的朋友参考下
延伸 · 阅读
- 2019-12-26使SQL用户只能看到自己拥有权限的库(图文教程
- 2019-12-26sql多条件多字段排序(图文教程)
- 2019-12-26SQL数据库日志已满解决方法
- 2019-12-26SQL order by ID desc/asc加一个排序的字段解决查询慢
- 2019-12-26sql处理数据库锁的存储过程分享
- 2019-12-26sql 查询记录数结果集某个区间内记录
- Mysql
MySQL文本文件导入及批处理模式应用说明
MySQL文本文件导入及批处理模式应用说明,需要的朋友可以参考下。 ...
- Mysql
mysql error:#1062 Duplicate entry ‘***′ for key 1问题解决方法
今天公司的一个网站突然提示MySQL Error Duplicate entry '96624' for key 1错误,经过分析这个问题是由于mysql表中的一个id自增长字段导致。 ...
- Mysql
关于mysql数据库格式化简单介绍
本文将介绍关于mysql数据库格式化时需要注意的一些问题,需要的朋友可以参考下 ...
- Mysql
mysql建库时提示Specified key was too long max key length is 1000 bytes的问题
本文将详细提供mysql建库时提示Specified key was too long max key length is 1000 bytes的问题的解决方法,有需求的朋友可以参考 ...
- Mysql
show engine innodb status显示信息不全如何解决
执行 show engine innodb status\G 时,显示的信息不全,DEADLOCK相关信息太多,后面的都没了 ...
- Mysql
MySQL新建用户中的%到底包不包括localhost?
操作MySQL的时候发现,有时只建了%的账号,可以通过localhost连接,有时候却不可以,网上搜索也找不到满意的答案,干脆手动测试一波...
- Mysql
MySQL 获得当前日期时间的函数小结
MySQL 获得当前日期时间的函数小结,需要的朋友可以参考下。 ...
- Mysql
MySQL 数据库两台主机同步实战(linux)
MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维护日...