DROP SEQUENCE (Transact-SQL)

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

主题链接图标 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)

概念

序列号