有没有办法在 SQL Server 中创建唯一的序列号
select <sequence>.nextval from dual
我们有上面的 Oracle 代码,它将创建一个唯一的号码,并且该号码不能被任何其他人使用。
以同样的方式如何在 SQL Server 中创建唯一的序列号????
有人在这方面帮助我
有没有办法在 SQL Server 中创建唯一的序列号
select <sequence>.nextval from dual
我们有上面的 Oracle 代码,它将创建一个唯一的号码,并且该号码不能被任何其他人使用。
以同样的方式如何在 SQL Server 中创建唯一的序列号????
有人在这方面帮助我
SQL Server 2012 中正在添加序列 - 但这还没有完全发布。如果您想提前试用,产品的候选发布版本中包含它们。
如果该序列仅由单个表使用,那么您可以使用标识列功能,它允许您指定起始编号和每条记录添加的值。
如果您正在寻找可以跨多个表使用的序列,则需要在 SQL Server 中创建一个专用表,该表具有标识字段的单列 - 并且每当您需要 .nextval 时,您将插入将一行插入表中以获取新数字。该表就像一个序列。该表将随着时间的推移而填满,不需要在表中保留记录,身份存储它的当前值和增量以获得系统表上的下一个值。
只有即将推出的 SQL Server 2012 支持符合 sql 标准的序列对象。:-( 在任何当前版本的 SQL Server(2008 R2 及更低版本)中,您必须使用具有标识约束的列,如下所示:
CREATE TABLE t1
(
id int identity(1,1),
somecol varchar(50)
);
这将在 id 列中生成从 1 开始的值,并以 1 的步长递增它们。