0
は私がEMP1とEMP2を持つテーブルを持っているOracleの2つの列を持つ主キー?
EMP1:
emp_1 | emp_2
1 | 2
3 | 4
5 | 6
EMP2:
私はテーブルのEMP1とEMP2への外部キーに主キーを設定しようとしたemp
1
2
3
6
。
alter table emp1 add primary key(emp_1,emp_2);
外部キーの場合:
alter table emp2
add foreign key (emp)
references a_t1(emp_1,emp_2);
エラー:親切
Error report -
SQL Error: ORA-02256: number of referencing columns must match referenced columns
02256. 00000 - "number of referencing columns must match referenced columns"
*Cause: The number of columns in the foreign-key referencing list is not
equal to the number of columns in the referenced list.
*Action: Make sure that the referencing columns match the referenced
columns.
このエラーを解決するために私を助けると
マイコード:主キーの
主キーを設定します。
1つのフィールドから2つのフィールドに外部キーを追加しようとしています。テーブルEMP2の値がテーブルEMP1の列emp_1またはemp_2のレコードと一致する必要があるかどうかを判断する必要があります。 – Aleksej
FKは、複合PKの一部、または2つの別個の鍵(PKまたはUK)のいずれかを参照することはできません。たとえば、値(7,8)と値(8,9)を持つemp1の行があり、値(8)のemp2の行が必要だったとしたら、どうなるでしょうか?親のどの列がそれを参照していますか? –
yeh私はそれを得た。複合主キーを作成しようとしていました。 – user5505661