Oracle序列和SQL Server标识列的区别


ORACLE中序列和SQL中的标识有什么区别?

oracle中的序列,是一个对象,是独立于表的一个存在,需要实现表的自增时,需要手动调用序列的nextval;
SQL中的标识的话,是跟表一起使用的,在设置了标识后,不用手动调用,会自动增长,不过在人为插入标识列的值的话,需要设置set identity_insert 表明 on,然后下次标识会从人为插入的值开始重新增长

在SQL 中我们为一个标识列手动赋值时应设置


SET IDENTITY_INSERT dbo.Student ON,

Insert 语句....

当我们通过手动赋值后,下次想让数据库自动为标识列赋值时

SET IDENTITY_INSERT dbo.Student OFF,

Insert 语句....

这时自动生成序列在手动添加的值上面增加.


 

猜你喜欢

转载自liuyunlong1229.iteye.com/blog/1586427