উদাহরণস্বরূপ, সারণির কাঠামোর নীচে একটি ত্রুটি দেওয়া হয়েছে: রেফারেন্সযুক্ত টেবিলের জন্য প্রদত্ত কীগুলির সাথে কোনও অনন্য বাধা নেই, এবং এটির জন্য তাকিয়ে থাকার পরে আমি বুঝতে পারি না কেন এই পরিস্থিতিতে এই ত্রুটি দেখা দেয়।
BEGIN;
CREATE TABLE foo (
name VARCHAR(256) PRIMARY KEY
);
CREATE TABLE bar(
pkey SERIAL PRIMARY KEY,
foo_fk VARCHAR(256) NOT NULL REFERENCES foo(name),
name VARCHAR(256) NOT NULL,
UNIQUE (foo_fk,name)
);
CREATE TABLE baz(
pkey SERIAL PRIMARY KEY,
bar_fk VARCHAR(256) NOT NULL REFERENCES bar(name),
name VARCHAR(256)
);
COMMIT;
উপরের কোডটি চালনা করা নিম্নলিখিত ত্রুটিটি দেয় যা আমার কাছে বোধগম্য নয়, যে কেউ এই ত্রুটি কেন ঘটেছে তা ব্যাখ্যা করতে পারে। আমি পোস্টগ্রিজ 9.1 ব্যবহার করছি
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "foo_pkey" for table "foo"
NOTICE: CREATE TABLE will create implicit sequence "bar_pkey_seq" for serial column "bar.pkey"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "bar_pkey" for table "bar"
NOTICE: CREATE TABLE / UNIQUE will create implicit index "bar_foo_fk_name_key" for table "bar"
NOTICE: CREATE TABLE will create implicit sequence "baz_pkey_seq" for serial column "baz.pkey"
NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "baz_pkey" for table "baz"
ERROR: there is no unique constraint matching given keys for referenced table "bar"
********** Error **********
ERROR: there is no unique constraint matching given keys for referenced table "bar"
SQL state: 42830