DROP SEQUENCE (Transact-SQL)

 

从当前数据库中删除序列对象。

适用范围:SQL Server(SQL Server 2012 到当前版本) SQL 数据库 V12。

主题链接图标Transact-SQL 语法约定

语法

DROP SEQUENCE { [ database_name . [ schema_name ] . | schema_name. ]    sequence_name } [ ,...n ]
 [ ; ]

参数

  • database_name
    要在其中创建序列对象的数据库的名称。

  • schema_name
    序列对象所属架构的名称。

  • sequence_name
    要删除的序列的名称。类型为 sysname

备注

在生成编号后,序列对象与其生成的编号之间没有延续关系,因此可以删除序列对象,即使生成的编号仍在使用。

当序列对象由存储过程或触发器引用时,可以删除序列对象,因为序列对象未绑定到架构上。如果序列对象是作为表中的默认值引用的,则无法删除序列对象。错误消息将列出引用序列的对象。

若要列出数据库中的所有序列对象,请执行以下语句。

SELECT sch.name + '.' + seq.name AS [Sequence schema and name] 
    FROM sys.sequences AS seq
    JOIN sys.schemas AS sch
        ON seq.schema_id = sch.schema_id ;
GO

安全性

权限

要求具有架构的 ALTER 或 CONTROL 权限。

审核

若要审核 DROP SEQUENCE,请监视 SCHEMA_OBJECT_CHANGE_GROUP

示例

以下示例从当前数据库中删除一个名为 CountBy1 的序列对象。

DROP SEQUENCE CountBy1 ;
GO

请参阅

ALTER SEQUENCE (Transact-SQL)
CREATE SEQUENCE (Transact-SQL)
NEXT VALUE FOR (Transact-SQL)
序列号