DB2データベースの特定のテーブルに主キーを定義する必要があるツールを使用しています。
DBで選択ステートメントを使用して、特定のテーブルに選択ステートメントがあるかどうかを確認する方法はありますか?
ありがとう。
免責事項:私はDB2を知りません。
私は単にこれらを「db2テーブル定義」でググった。
SELECT *
FROM SYSIBM.SYSTABLES TAB,SYSIBM.SYSCOLUMNS COL
WHERE TAB.CREATOR = COL.TBCREATOR
AND TAB.CREATOR = 'xxxx'
AND TAB.NAME = 'xxxxxxxxxxxxx'
AND TAB.NAME = COL.TBNAME
AND TAB.TYPE = 'V' ( OR 'T' )
ORDER BY 1,2;
SELECT * FROM syscat.tabconst WHERE type = 'P';
あなたはdb2look
、テーブルのDDLを提供します。
db2look -d db_name -e -x -z schema_name -t table_name
主キーは一致するインデックスによってサポートされるため、これはおそらく最も簡単なオプションです。
select COLNAMES from SYSIBM.SYSINDEXES where tbname = 'TABLE' and uniquerule = 'P';
列カタログテーブルをクエリすることもできます。
select NAME from SYSIBM.SYSCOLUMNS where tbname = 'TABLE' and keyseq > 0 order by keyseq;