DROP SEQUENCE (Transact-SQL)
適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance
現在のデータベースからシーケンス オブジェクトを削除します。
構文
DROP SEQUENCE [ IF EXISTS ] { database_name.schema_name.sequence_name | schema_name.sequence_name | sequence_name } [ ,...n ]
[ ; ]
引数
IF EXISTS
適用対象: SQL Server (SQL Server 2016 (13.x) から現在のバージョンまで)。
条件付きではすでに存在する場合にのみ、シーケンスを削除します。
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 権限が必要です。
Audit
DROP SEQUENCE を監査するには、SCHEMA_OBJECT_CHANGE_GROUP を監視します。
例
次の例では、現在のデータベースから CountBy1
という名前のシーケンス オブジェクトを削除します。
DROP SEQUENCE CountBy1 ;
GO
参照
ALTER SEQUENCE (Transact-SQL)
CREATE SEQUENCE (Transact-SQL)
NEXT VALUE FOR (Transact-SQL)
シーケンス番号