所以我目前有一个名为subject的数据库,其中包含主题的名称和负责人的全名。
我刚刚添加了一个包含联系信息的新表,其中包含主键employee_id,以及其他属性,包括employee_fn和employee_ln。
我本来想要实现的目标,就是更新“负责任的”'从全名属性到引用employee_id的外键,其中名称相应地对应。
我在为此编写SQL时遇到了麻烦,老实说甚至无法手动解决如何手动操作或查询问题。
感谢任何帮助!
由于
答案 0 :(得分:0)
从你的问题我理解的是你想要将负责的列作为主题表的FK并将其指向employee_id作为FK ..right ??
但这不可能,因为FK需要在其他表中使用PK。 Employee_id将是一个整数,并且无法保存全名。
任何具有预期输出的样本数据都可以帮助您。
但是,如果您将employee_id作为主题表中的列,则此更新将起作用。
update subject s
set responsible = (
select employee_fn||employee_ln as fullname,employee_id
from
employee
) e
where e.employee_id = s.employee_id
您的主题必须将employee_id作为fk,employee表必须作为employee_id作为PK-FK关系的PK。