入れ子になったテーブルに主キーと外部キーを追加しようとしていますが、どうすればよいかわかりません。
これは私が持っているものです。
create or replace type profile as object
(
id VARCHAR2(10), --- Suppose to be Primary Key
userID VARCHAR2(10) --- Suppose to be Foreign Key for user table
);
create or replace type profile_nest as table of profile;
CREATE OR REPLACE TYPE user_t UNDER group_T
(profile profile_nest_ty,);
CREATE TABLE user OF user_t
(id NOT NULL,
PRIMARY KEY (id),
nested table profile store as profile_storage_tbl;
問題はこの部分で、外部キーを実行しようとしています -
alter table profile_storage_tbl add CONSTRAINT fk_userID FOREIGN KEY (userID)
REFERENCES user(id);
このエラーが発生します-
*コマンドの 3 行目から始まるエラー:
alter table profile_storage_tbl add CONSTRAINT fk_userID FOREIGN KEY (userID) REFERENCES user(id)
エラー レポート:
SQL エラー: ORA-30730: ネストされたテーブル列 30730 では参照制約は許可されていません。 00000 - "参照制約ネストした表の列では使用できません"
*原因: ネストした表の列に参照制約を定義しようとしました。
処置: ネストした表の列に参照制約を指定しないでください。