私は次のように別のテーブルのBANK_CARDに関連付けられているテーブルBILLガット:矛盾NULL/NOT NULL宣言「法案」
create table BILL (
id_bill BIGSERIAL not null,
id_bank_card BIGSERIAL null,
id_registred_user BIGSERIAL not null,
reference_number INT4 null,
purchase_date DATE null,
bill_status VARCHAR(50) null,
payment_method VARCHAR(50) null,
constraint PK_BILL primary key (id_bill)
);
create table BANK_CARD (
id_bank_card BIGSERIAL not null,
id_registred_user BIGSERIAL not null,
card_type VARCHAR(50) null,
card_number INT4 null,
expiring_date DATE null,
cipher INT4 null,
constraint PK_BANK_CARD primary key (id_bank_card)
);
テーブルBILLは0..1を持っていますテーブルBANK_CARDとの関連付け、およびBANK_CARDにはテーブルBILLとの1..nの関連付けがあります。
しかし、私は私のSQLスクリプトを実行したとき、私は次のエラーを取得する:
conflicting NULL/NOT NULL declarations for column "id_bank_card" of table "bill"
関係BILLとBANK_CARDは外部キーid_bank_cardがテーブル法案にnullを指定でき0..1あるので、私ドンのでなぜこのエラーが出るのか理解できません。
お願いします。おかげさまで
なぜ2つのシリアルが1つのテーブルにありますか?なぜあなたは3つのシリアルを1つのテーブルに持っていますか? – joop