DROP TYPE (Transact-SQL)
現在のデータベースから、別名データ型または共通言語ランタイム (CLR) ユーザー定義型を削除します。
構文
DROP TYPE [ schema_name. ] type_name [ ; ]
引数
schema_name
別名データ型またはユーザー定義型が属するスキーマの名前を指定します。type_name
削除する別名データ型またはユーザー定義型の名前を指定します。
説明
次のいずれかに当てはまる場合には、DROP TYPE ステートメントは実行されません。
削除しようとしている別名データ型またはユーザー定義型の列を含むテーブルがデータベースにある場合。別名型またはユーザー定義型の列の情報は、sys.columns カタログ ビューまたは sys.column_type_usages カタログ ビューをクエリすることによって取得できます。
計算列、CHECK 制約、スキーマ バインド ビュー、およびスキーマ バインド関数の中には、別名型またはユーザー定義型への参照を含む定義を持つものもあります。sys.sql_expression_dependencies カタログ ビューに対してクエリを実行することによって、これらの参照についての情報を取得できます。
データベースに関数、ストアド プロシージャ、またはトリガが作成されていて、それらのルーチンが、削除しようとしている別名データ型またはユーザー定義型の変数やパラメータを使用している場合。別名型またはユーザー定義型のパラメータについての情報は、sys.parameters カタログ ビューまたは sys.parameter_type_usages カタログ ビューをクエリすることによって取得できます。
別名型およびユーザー定義型の参照の調査の詳細については、「ユーザー定義型の実装」を参照してください。
権限
type_name に対する CONTROL 権限、または schema_name に対する ALTER 権限が必要です。
例
次の例では、ssn という名前の型が現在のデータベースに既に作成されていることを前提としています。
DROP TYPE ssn ;