我试过这样做但失败了。
ALTER table emp ADD CONSTRAINT FK_Dept
FOREIGN KEY (dept) REFERENCES dept (CAST (deptid) as INT)
我遇到了这种情况,因为emp表中的Deptid
是dept表中的char和int
答案 0 :(得分:0)
不,你不能这样做。数据类型必须在约束中涉及的键之间匹配。正确的操作是纠正emp table
中的数据类型。
如果dept
表的emp
列中的数据是作为字符存储的整数,并且匹配dept
表中的数据(必须使约束起作用)你应该能够改变表格来改变类型,然后像这样添加约束:
alter table emp alter column dept int;
alter table emp add constraint FK_Dept foreign key (dept) references dept (deptid);
答案 1 :(得分:0)
你想要做的事情是不可能的。
我认为你应该考虑一下: - 重新输入列或 - 将转换后的值插入列
你不能用Views来做,因为你不能引用它们!
希望能帮到你