我的数据库中有以下表
Employee(Fname, Lname, SSN(PK), Address, Salary, Dno(FK))
Department(Dname, Dnumber(PK), Mgr_ssn(FK))我想创建一个断言,用于检查对于作为经理工作的员工,employee表中的部门编号(Dno)是否与他们在department表中管理的部门的部门编号相匹配。
我创建了以下断言,但我不确定它是否满足要求。
CREATE ASSERTION MGR_DEPT_ASSERT
CHECK ( EXIST (SELECT SSN, Dnumber from
Employee, Department WHERE Dno= Dnumber AND SSN=Mgr_ssn))我会感谢你的帮助
谢谢
发布于 2016-06-08 20:48:51
不是的。
此断言将停止的唯一数据库值是空表。(或者更准确地说,是任何导致空连接的东西。)
顺便说一句,你为什么想要这个断言?在实践中,没有任何产品能够可靠地支持这一点。除非你愿意抛弃SQL。
https://stackoverflow.com/questions/20439126
复制相似问题