シナリオ:
あなたは自動車保険会社でSQLServer開発者/SQLServerDBAとして働いています。スキーマ名、列名、および主キー制約が作成されている主キー制約を持つすべてのテーブルのリストを返すクエリを提供するように求められます。解決策:
この情報を取得する方法は複数あります。システムビューを使用して、SQLServerデータベースの主キー制約を持つすべてのテーブルを取得します。Select
TC.Table_Catalog as DatabaseName,
TC.Table_Schema AS TableSchema,
TC.Table_Name AS TableName,
CCU.Column_Name AS ColumnName,
TC.Constraint_Name AS ConstraintName
From
information_Schema.Table_Constraints TC
INNER JOIN
Information_Schema.constraint_column_usage CCU
on TC.Constraint_Name=CCU.Constraint_Name
and TC.Table_Name=CCU.Table_Name
where
Constraint_Type='PRIMARY KEY' テストデータベースの1つで上記のクエリを実行しました。これが、主キーの制約があるテーブル名を使用した結果です。
主な制約があるSQLServerデータベースのテーブルのリストを取得する-SQLServer/TSQLチュートリアルビデオデモ:SQLServerデータベースの主キー制約のリストを取得