DROP RULE (Transact-SQL)
適用対象: SQL ServerAzure SQL Managed Instance
1 つ以上のユーザー定義のルールを現在のデータベースから削除します。
重要
DROP RULE は、次期バージョンの Microsoft SQL Server では削除される予定です。 新しい開発作業では、DROP RULE の使用は避け、現在このオプションを使用しているアプリケーションは修正するようにしてください。 代わりに、CREATE TABLE または ALTER TABLE の CHECK キーワードを使用して作成できる CHECK 制約を使用してください。 詳細については、「 Unique Constraints and Check Constraints」を参照してください。
構文
DROP RULE [ IF EXISTS ] { [ schema_name . ] rule_name } [ ,...n ] [ ; ]
Note
SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。
引数
IF EXISTS
適用対象: SQL Server (SQL Server 2016 (13.x) から現在のバージョンまで)。
条件付きでは既に存在する場合にのみ、ルールを削除します。
schema_name
ルールが属しているスキーマの名前を指定します。
rule
削除するルールです。 ルール名は、識別子の規則に従っている必要があります。 ルールのスキーマ名の指定は省略可能です。
注釈
ルールを削除するには、そのルールが列または別名データ型に現在バインドされている場合、まず、このバインドを解除します。 ルールのバインドを解除するには、sp_unbindrule を使います。 バインドされているルールを削除しようとすると、エラー メッセージが表示され、DROP RULE ステートメントは取り消されます。
ルールを削除すると、以前はそのルールに制御されていた列に新しいデータを入力しても、ルールの制約を受けなくなります。 既存のデータはまったく影響を受けません。
DROP RULE ステートメントは、CHECK 制約には適用されません。 CHECK 制約の詳細については、「ALTER TABLE (Transact-SQL)」を参照してください。
アクセス許可
DROP RULE を実行するには、少なくとも、ルールが属するスキーマに対する ALTER 権限が必要です。
例
次の例では、VendorID_rule
というルールのバインドを解除し、削除します。
sp_unbindrule 'Production.ProductVendor.VendorID'
DROP RULE VendorID_rule
GO
参照
CREATE RULE (Transact-SQL)
sp_bindrule (Transact-SQL)
sp_help (Transact-SQL)
sp_helptext (Transact-SQL)
sp_unbindrule (Transact-SQL)
USE (Transact-SQL)
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示