请在判断之前记住,我不明白这就是为什么我问这个问题。我对过去发生的一些倒计投票感到灰心。如何在Oracle10g中设置关键表到关系表中
我必须在Oracle 10g中创建一个数据库,并使用该模板创建一个新表。 该数据库是关于虚构的Facebook应用程序。
除其他它包括关系“喜欢”具有3个属性所有这些都认为是键:
like:
username: key
message_author: key
message_code: key
正如我说像之间是两个实体用户和消息的关系。
我试图设置表,就像连接到其他表的3个外键一样,但oracle不会接受它。
我收到以下错误信息:
无法创建FK like_FK2 ORA-02270:没有匹配此列列表唯一或主键
ORA-00942:表或视图不存在
ORA-06510:PL/SQL:未处理的用户定义的异常
我想我做错了什么的钥匙,但我不明白它是什么
SQL命令:
CREATE table "ΑΡΕΣΕΙ" (
"ΟΝΟΜΑΧΡΗΣΤΗ" VARCHAR2(30) NOT NULL,
"ΣΥΓΦΕΑΣ_ΜΗΝΤΟΣ" VARCHAR2(30) NOT NULL,
"ΚΩΔΜΗΝΥΜΑΤΟΣ" NUMBER NOT NULL
)
/
ALTER TABLE "ΑΡΕΣΕΙ" ADD CONSTRAINT "ΑΡΕΣΕΙ_FK"
FOREIGN KEY ("ΟΝΟΜΑΧΡΗΣΤΗ")
REFERENCES "ΧΡΗΣΤΗΣ" ("ΟΝΟΜΑΧΡΗΣΤΗ")
/
ALTER TABLE "ΑΡΕΣΕΙ" ADD CONSTRAINT "ΑΡΕΣΕΙ_FK2"
FOREIGN KEY ("ΣΥΓΦΕΑΣ_ΜΗΝΤΟΣ")
REFERENCES "ΜΗΝΥΜΑ" ("ΣΥΓΦΕΑΣ_ΜΗΝΤΟΣ")
/
ALTER TABLE "ΑΡΕΣΕΙ" ADD CONSTRAINT "ΑΡΕΣΕΙ_FK3"
FOREIGN KEY ("ΚΩΔΜΗΝΥΜΑΤΟΣ")
REFERENCES "ΜΗΝΥΜΑ" ("ΚΩΔΜΗΝΥΜΑΤΟΣ")
/
alter table "ΑΡΕΣΕΙ" add
constraint ΑΡΕΣΕΙ_UK1
unique ("ΚΩΔΜΗΝΥΜΑΤΟΣ")
/
你可以发布你的DDL语句吗? – 2013-03-14 02:40:17
ΑΡΕΣΕΙ=样表名称 ΟΝΟΜΑΧΡΗΣΤΗ=用户名 ΣΥΓΦΕΑΣ_ΜΗΝΤΟΣ= message_author ΚΩΔΜΗΝΥΜΑΤΟΣ= message_code – n17n 2013-03-14 02:47:51
要添加到FKS表,你没有显示的DDL。请为所有表显示所有相关的创建语句。 – OldProgrammer 2013-03-14 03:26:24