SQLServer 中表的自增长列
1.建表(Create table)时使用 IDENTITY (SEED,INCREMENT)
其中SEED是起始值,INCREMENT是增量。
例:
CREATE TABLE mytable1
(
[user_id] BIGINT NOT NULL
IDENTITY(1, 1) ,
[user_mail] NVARCHAR(255)
)
命令已成功完成。
2.修改表(Alter table)列的自增长
SQLServer不允许修改已经存储的自增长列,但是可以为一个没有自增长标识列的表添加自增长列
例:
DROP TABLE mytable1 -- 删除刚才创建的表
CREATE TABLE mytable1
(
[user_mail] NVARCHAR(255)
)
ALTER TABLE mytable1 ADD [user_id] BIGINT IDENTITY(1,1)
命令已成功完成。
3.手动插入自增长字段的值
例:
SET IDENTITY_INSERT mytable1 ON -- 开启 手动
INSERT INTO mytable1
( [user_id], [user_mail] )
VALUES ( 10, N'oyi319@email.com' )
SET IDENTITY_INSERT mytable1 OFF -- 关闭 手动
(1 行受影响)
4.更改当前SEED值
a.用DBCC CHECKIDENT重新设置表的标识列的值
例:
DBCC CHECKIDENT(mytable1, RESEED, 4)
检查标识信息: 当前标识值 '10',当前列值 '4'。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
b.不重设当前值,只是查看当前值的报告
例:
DBCC CHECKIDENT(mytable1, NORESEED)
检查标识信息: 当前标识值 '4',当前列值 '10'。
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
相关文档:
如何开启SQLSERVER数据库缓存依赖优化网站性能
数据库, 缓存, SQLSERVER, 性能
很多时候,我们服务器的性能瓶颈会是在查询数据库的时候,所以对数据库的缓存非常重要,那么有没有一种方法,可以实现SQL SERVER数据库的缓存,当数据表没有更新时,就从缓存中读取,当有更新的时候,才从数据表中读取呢,答案是肯定的,这 ......
游标操作的六步骤:
◆在每次在创建游标的时候都问问自己,用什么别的方法可以避免使用游标,那么你就步如设计的正规了.
1.声明
2.打开
3.应用/操作
4.关闭.
5.释放
&nbs ......
最近因为要写一个数据并发访问的控制程序,上网查了一些资料,现在归纳如下: 锁的概述 一. 为什么要引入锁
多个用户同时对数据库的并发操作时会带来以下数据不一致的问题:
丢失更新
A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结 ......
http://www.tongyi.net/article/20031101/200311013786.shtml
所谓的数据传输,其实是指SQLServer访问Access、Excel间的数据。
为什么要考虑到这个问题呢?
由于历史的原因,客户以前的数据很多都是在存入在文本数据库中,如Acess、Excel、Foxpro。现在系统升级及数据库服务器如SQLServer、ORACLE后,经常需要访问文本数 ......