以下は、SQLのさまざまなリソースの存在を判断するために使われるコードの紹介です。必要な友人は参照できます。SQL関数やデータベースの学習に役立つことを願っています。 図書館が存在します もし存在すれば(マスターから*を選択してください...) sysdatabases(name=N'データベース名) 印刷物「存在」 そうでなければ 印刷「存在しない」 --------------- -- 作成予定のテーブル名が存在するかどうかを判定します もし存在する場合(dbo.sysobjectsから* を選択、id = object_id(N'[dbo].[ テーブル名]')およびOBJECTPROPERTY(id, N'IsUserTable') = 1) -- テーブルを削除 ドロップテーブル[DBO]。 [テーブル名] 行け --------------- --作成予定の一時テーブルが存在するかどうかを判定します もしObject_Id('tempdb.dbo.#Test')がnullでなければ 開始 印刷物「存在」 終わり そうでなければ 開始 印刷物は「存在しません」 終わり --------------- -- 作成予定のストアドプロシージャ名が存在するかどうかを判定します もし存在する場合(dbo.sysobjectsから* を選択、id = object_id(N'[dbo].[ ストアドプロシージャ名]')およびOBJECTPROPERTY(id, N'IsProcedure') = 1) -- ストアドプロシージャを削除する ドロップ手順[DBO]。 [ストアドプロシージャ名] 行け
--------------- -- 作成するビュー名が存在するかどうかを判定します もし存在する場合(dbo.sysobjectsから* を選択、id = object_id(N'[dbo].[ View Name]') および OBJECTPROPERTY(id, N'IsView') = 1) -- 表示を削除 視聴をドロップ[DBO]。 [名前を見る] 行け --------------- -- 作成する関数名が存在するかどうかを判定します もし存在する場合(dbo.sysobjectsから* を選択、id = object_id(N'[dbo].[ 関数名]')およびxtype(N'FN', N'IF', N'TF'))に含まれます。 -- 削除関数 ドロップ関数[DBO]。 [関数名] 行け col_length('table name', 'column name')がnullの場合 印刷物は「存在しません」 SysObjectsから1を選択し、IDが入っている場合(sysColumnsからIDを選択し、name='column name')およびname='table name'
|