Closed1
Supabaseでのconstraintを確認する
there is no unique constraint matching given keys for referenced tableのようなエラーが出ている時、どんな制約が登録されているのか確認したい時の方法。
SQLエディターで以下のクエリを叩く。
SELECT
tc.table_schema,
tc.constraint_name,
tc.table_name,
kcu.column_name,
ccu.table_schema AS foreign_table_schema,
ccu.table_name AS foreign_table_name,
ccu.column_name AS foreign_column_name
FROM
information_schema.table_constraints AS tc
JOIN information_schema.key_column_usage AS kcu
ON tc.constraint_name = kcu.constraint_name
AND tc.table_schema = kcu.table_schema
JOIN information_schema.constraint_column_usage AS ccu
ON ccu.constraint_name = tc.constraint_name
AND ccu.table_schema = tc.table_schema
WHERE tc.constraint_type = 'FOREIGN KEY' and tc.table_schema ='public';
すでにデータと参照先が入っているテーブルに対して後から外部キーを設定しようとするとうまくいかない事が多いようです。
このスクラップは2023/02/08にクローズされました