[ad_1]
ぜ
create table customer( CMobile_no int , Customer_id int, Customer_Address varchar(20), Fname varchar(20), Minit varchar(20), Lname varchar(20), Customer_id2 int, constraint customer_pk primary key (Customer_id2), );
create table Buysfrom( Cid int, Bid int, Hrs int, CONSTRAINT buys_pk primary key (Cid,Bid), Constraint customer_Buys_pk foreign key (Cid) references customer(Customer_id2), constraint Branch_Buys_fk foreign key (Bid)references Branch(Branch_id), );
購入元の customer_id2 にエラーがあります
エラーメッセージは次のとおりです。
外部キー customer buys pk 参照された無効な列 customer_id2 in refrenced テーブル customer
私が試したこと:
テーブル customer の customer_id2 を変更しますが、何の影響もありません
解決策 1
はぁ。 エラーメッセージを読んでください。 「customer」テーブルに列「customer_id2」が存在しないことを示しています。 それについて何をするかは、「顧客」テーブルの主キー列を何と呼んだかによって異なります。
解決策 2
2 つのクエリを変更せずに提示された順序で実行すると、存在しないブランチ テーブルに関連するエラーが発生します。
したがって、エラーは、2 番目のコードを最初に実行し、最初のコードを 2 番目に実行したことを示しているため、2 番目のコードで参照されているテーブルはまだ存在していません。
SQL では、テーブルを「前方参照」することはできません。後でテーブルを作成することを「認識」していないため、データの整合性を維持できないと文句を言います。
[ad_2]
コメント