c# を使用して postgresql でデータベース テーブルのクローンを作成しています。また、新しく作成したテーブルに制約を追加したいと考えています。
制約を動的に追加する方法を提案できる人はいますか?
複製したテーブルからすべての制約を追加したい
ありがとう
c# を使用して postgresql でデータベース テーブルのクローンを作成しています。また、新しく作成したテーブルに制約を追加したいと考えています。
制約を動的に追加する方法を提案できる人はいますか?
複製したテーブルからすべての制約を追加したい
ありがとう
次のようなものを使用します。
SELECT pg_get_constraintdef(oid)
FROM pg_constraint
WHERE conrelid = (select oid from pg_class where relname = ?)
どこ ?制約のコピー元のテーブル名です。次に、チェック、一意、およびキー制約のリストを取得し、アプリケーションで何をコピーするかを決定できます。これらは定義形式であるため、次のような行が表示されます。
PRIMARY KEY(id)
と
FOREIGN KEY (other_id) REFERENCES other_table (id)