sql自增长设置与删除的深入分析

所属分类: 数据库 / Mysql 阅读数: 1825
收藏 0 赞 0 分享
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
更多精彩内容其他人还在看

Mac 将mysql路径加入环境变量的方法

这篇文章主要介绍了Mac如何将mysql路径加入环境变量,有需要的朋友好按照下面的步骤操作即可
收藏 0 赞 0 分享

mysql 增加修改字段类型及删除字段类型

本节主要介绍了mysql如何增加修改字段类型及删除字段类型,需要的朋友可以参考下
收藏 0 赞 0 分享

Mysql主从复制(master-slave)实际操作案例

这篇文章主要介绍了Mysql主从复制(master-slave)实际操作案例,同时介绍了Mysql grant 用户授权的相关内容,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL异常处理浅析

这篇文章主要介绍了MySQL的异常处理,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL存储毫秒数据的方法

MySQL中没有可以直接存储毫秒数据的数据类型,但是不过MySQL却能识别时间中的毫秒部分。这篇文章主要介绍了MySQL存储毫秒数据的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

MySql中使用INSERT INTO语句更新多条数据的例子

这篇文章主要介绍了MySql中使用INSERT INTO语句更新多条数据的例子,MySQL的特有语法,需要的朋友可以参考下
收藏 0 赞 0 分享

Windows下MySql错误代码1045的解决方法

这篇文章主要介绍了Windows下MySql错误代码1045的解决方法,文中还包含了2个Linux下的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql查询今天、昨天、近7天、近30天、本月、上一月的SQL语句

这篇文章主要介绍了mysql查询今天、昨天、近7天、近30天、本月、上一月的SQL语句,一般在一些统计报表中比较常用这个时间段,需要的朋友可以参考下
收藏 0 赞 0 分享

mysql的中文数据按拼音排序的2个方法

这篇文章主要介绍了mysql的中文数据按拼音排序的2个方法,用于一些特殊环境,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL定期分析检查与优化表的方法小结

听DBA的人说,相比oracle,MySQL就是一个玩具级别的数据库,在网易门户中,DBA基本很少去管理到MySQL的东西,所以我们产品使用到的MySQL的一些配置和优化还是需要我们开发人员自己动手,下面就简单介绍一下实用的定期优化方法
收藏 0 赞 0 分享
查看更多