每次尝试时我都被困在这个年代 - 它出现了以下错误:无法验证 - 未找到父键.
这是代码(http://i.imgur.com/6JBzTiM.jpg):

我可以在Employees表中创建主键并将其分配给EmployeeId.但是当试图在WorkPackages表中添加它作为外键时(使用下面的代码)
ALTER TABLE WORKPACKAGES
ADD FOREIGN KEY (EMPLOYEEID) REFERENCES EMPLOYEES (EMPLOYEEID);
Run Code Online (Sandbox Code Playgroud)
它不断提出验证错误.
我究竟做错了什么?
Sat*_*hat 19
ALTER TABLE WORKPACKAGES
ADD FOREIGN KEY (EMPLOYEEID) REFERENCES EMPLOYEES (EMPLOYEEID);
Run Code Online (Sandbox Code Playgroud)
强制执行此密钥时,Oracle会检查Workcages表中存在的所有employeeid是否存在于Employees表中.
你的选择:
SELECT employeeid
FROM workpackages
WHERE employeeid NOT IN (SELECT employeeid
FROM employees);
Run Code Online (Sandbox Code Playgroud)
然后将它们插入到employee表中.
另一种选择是使用NOVALIDATE以便不检查现有数据,但将验证任何新的插入/更新.请看这个小提琴演示.
| 归档时间: |
|
| 查看次数: |
36944 次 |
| 最近记录: |