SQL Serverは、様々なオブジェクトの関係が存在し、sysobjectsにするかどうかを判断します

、そのテーブルがあるか否かを判断します

OBJECT_ID()は:. Nは、異なる言語のUnicodeで支持することができるオブジェクトの名前を表すIDテーブルを取得します

場合 存在選択 *  から dbo.sysobjects ID = OBJECT_ID(N ' [DBO]。[表名] 'およびOBJECTPROPERTY(ID、N ' IsUserTable '= 1 ドロップテーブル[ DBO ][ 表名]     

第二に、ストアドプロシージャの名前が作成されるためにそこにあるかどうかを判断します

IF  EXISTSSELECT  *  から dbo.sysobjects ID = OBJECT_ID(N '[DBO] [ストアドプロシージャ名] 'およびOBJECTPROPERTY(ID、N ' IsProcedure '= 1 - ストアドプロシージャの削除ドロップ手順[ DBOを[ ストアドプロシージャ名]   
  

第三に、ビュー名を作成するためにそこにあるかどうかを判断します

IF  EXISTSSELECT  *  から dbo.sysobjects ID = OBJECT_ID(N ' [DBO] [表示名]。'OBJECTPROPERTY(ID、N ' IsView '= 1。 - ビュー削除ドロップビュー[ DBOを][ ビュー名]   
  

第四に、関数の名前を作成する必要があるかどうかを判断します

IF  EXISTSSELECT  *  から dbo.sysobjects ID = OBJECT_ID(N '[DBO] [関数名] ' XTYPE (N ' FN '、N ' IF '、N ' TFが' ))
 - 機能を削除ドロップ機能[ DBO ][ 関数名] 
  

ファイブは、そこにリストされているか否かを判断します

もし COL_LENGTH'表名''列名' はない ヌル
セレクト *  からのsysobjects ここ ID 選択 ID から SYSCOLUMNSをどこ= '列名'名前= '表名'

六、dbo.sysobjects

  各データベースのSQL Server内のsysobjectsには、データベース内で作成されたすべてのオブジェクトを格納、このシステムテーブルを、持っています

  XTYPEオブジェクトタイプ:
    C:CHECK制約、D:DEFAULT制約、F:FOREIGN KEY制約、L:ログ、FN:スカラー関数、IF:インラインテーブル関数、P:ストアドプロシージャ、RF:レプリケーションフィルタストアドプロシージャ、TR:フリップフロップ、U:ユーザテーブル、X:ストアドプロシージャ、S拡張:システムテーブル、TF:表関数、UQ:UNIQUE制約(タイプK)、V:ビュー、PK:PRIMARY KEY制約(タイプK)

おすすめ

転載: www.cnblogs.com/haosit/p/10733954.html