SQL Server 2008 Express Edition - 如何创建序列

use*_*925 6 sql sql-server sql-server-2008-express

我正在使用SQL Server 2008 Express Edition.

我想用这段代码创建一个序列:

CREATE SEQUENCE Postoffice_seq
    AS bigint
    START WITH 1
    INCREMENT BY 1
    MINVALUE 0
    NO MAXVALUE;
Run Code Online (Sandbox Code Playgroud)

而错误是

消息343,级别15,状态1,行1
在CREATE,DROP或ALTER语句中使用的未知对象类型"SEQUENCE".

谁能帮我?

最好的祝福!

mar*_*c_s 10

SQL Server 2008还不知道序列 - 这将在SQL Server 2012(fka"Denali")中引入.

对于几乎相同的结果,请改用INT IDENTITY列:

CREATE TABLE dbo.YourTable
  (YourID INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
    ....
  )
Run Code Online (Sandbox Code Playgroud)

IDENTITY在您向表中插入新行时,SQL Server会自动填充该列.SQL Server确保它单调递增,从1开始增加1(如果需要,可以将它们设置为不同的值).

基本上,在向这样的表中插入行时,不能在列列表中指定IDENTITY列以插入值 - SQL Server将自动为您执行此操作.