2013-04-28 130 views
0

我需要帮助从工作人员表中添加主键和外键引用到staffposition表,branchno从表分支和主要主键作为日期开始。工作人员既不是PK和FK。这真的很烦人..我得到错误“ORA-01735:无效的ALTER TABLE选项”...任何人都可以提供输入?提前欢呼!SQL更改语句和外键/主键

ALTER TABLE StaffPosition 
add CONSTRAINT StaffPosition_pk PRIMARY KEY (DateStarted, StaffsNo), 
add FOREIGN KEY (StaffsNo) REFERENCES Staffs(StaffsNo), 
add FOREIGN KEY (BranchNo) REFERENCES Branch(BranchNo); 
+2

祝你的项目好运。如果您有任何疑问,请随时在此发布! – 2013-04-28 15:24:22

+0

哈哈我问过问题,但是谢谢.. – 2013-04-28 15:31:15

回答

1

您需要将它们分成不同的alter table语句;你不能发出一个将它们全部添加:

ALTER TABLE StaffPosition 
add CONSTRAINT StaffPosition_pk PRIMARY KEY (DateStarted, StaffsNo); 
ALTER TABLE StaffPosition 
add CONSTRAINT fk1 FOREIGN KEY (StaffsNo) REFERENCES Staffs(StaffsNo), 
ALTER TABLE StaffPosition 
add CONSTRAINT fk2 FOREIGN KEY (BranchNo) REFERENCES Branch(BranchNo); 
+0

啊对,我看到欢呼!我还没有使用alter语句,因为我只是创建表并添加下面的约束。但是我忘记了,因此我使用了alter语句。但现在我得到“ORA-00911:无效字符”哈哈。 – 2013-04-28 15:41:30

+0

嗯nvm ...我忘了把他们分开哈哈。 – 2013-04-28 16:01:38