2009年7月6日月曜日

[SQL]テーブルのキーおよび制約の確認(SQLServer )

先日、各テーブルのキーおよび制約について調べる作業をしていました。
既存の資料との突合せであったため、テーブルと資料を確認しながら作業をしていました。
SQLServerなので、1つづつSQL Server Management Studioで見ていけばわかるのですが、だんだん面倒になってきました。
また、ツールなどのインストールに制限があったため、キーおよびキー項目の制約を調査するSQLを作ってみました。コードはこんな感じ。

DECLARE @TABLE_NAME varchar(128);
SET @TABLE_NAME = 'tblTEST3';

SELECT
     ST.name as TABLE_NAME
    ,SI.name as INDEX_NAME
    ,SC.name as COLMN_NAME
    ,SI.type_desc as INDEX_TYPE
    ,CASE SI.is_unique WHEN 1 THEN 'UNIQ' ELSE '' END as UNIQ
    ,CASE SC.is_nullable WHEN 1 THEN '' ELSE 'NON NULL' END as NON_NULL
    --,SI.is_unique
    --,SC.is_nullable
    --,SC.*
    --,SIC.*
FROM SYS.TABLES ST
    INNER JOIN SYS.INDEXES SI on ST.object_idSI.object_id
    INNER JOIN SYS.INDEX_COLUMNS SIC on SI.object_idSIC.object_id AND SI.index_idSIC.index_id
    INNER JOIN SYS.COLUMNS SC ON SC.object_idSI.object_id AND SC.column_id=SIC.column_id
WHERE ST.name = @TABLE_NAME

27 件のコメント:

救援部 さんのコメント...
このコメントはブログの管理者によって削除されました。
メル友 さんのコメント...
このコメントはブログの管理者によって削除されました。
素人 さんのコメント...
このコメントはブログの管理者によって削除されました。
セレブラブ さんのコメント...
このコメントはブログの管理者によって削除されました。
出張ホスト さんのコメント...
このコメントはブログの管理者によって削除されました。
家出 さんのコメント...
このコメントはブログの管理者によって削除されました。
モテる度チェッカー さんのコメント...
このコメントはブログの管理者によって削除されました。
救援部 さんのコメント...
このコメントはブログの管理者によって削除されました。
逆援助 さんのコメント...
このコメントはブログの管理者によって削除されました。
倶楽部 さんのコメント...
このコメントはブログの管理者によって削除されました。
プロフ公開 さんのコメント...
このコメントはブログの管理者によって削除されました。
素人 さんのコメント...
このコメントはブログの管理者によって削除されました。
家出 さんのコメント...
このコメントはブログの管理者によって削除されました。
SM度チェッカー さんのコメント...
このコメントはブログの管理者によって削除されました。
セフレ さんのコメント...
このコメントはブログの管理者によって削除されました。
デリバリーホスト さんのコメント...
このコメントはブログの管理者によって削除されました。
プロフ完成 さんのコメント...
このコメントはブログの管理者によって削除されました。
家出 さんのコメント...
このコメントはブログの管理者によって削除されました。
チェッカー さんのコメント...
このコメントはブログの管理者によって削除されました。
素人 さんのコメント...
このコメントはブログの管理者によって削除されました。
セフレ さんのコメント...
このコメントはブログの管理者によって削除されました。
熟女サークル さんのコメント...
このコメントはブログの管理者によって削除されました。
メル友募集中 さんのコメント...
このコメントはブログの管理者によって削除されました。
露出 さんのコメント...
このコメントはブログの管理者によって削除されました。
グリー さんのコメント...
このコメントはブログの管理者によって削除されました。
玉の輿度チェッカー さんのコメント...
このコメントはブログの管理者によって削除されました。
救援部 さんのコメント...
このコメントはブログの管理者によって削除されました。