我正在尝试运行多个alter table语句来在我的数据库中添加外键
我正在使用RazorSQL
这是我的sql语句
ALTER TABLE SPO999.AVTVRSTEPLACILAPOD
ADD CONSTRAINT SQL100419145030510 FOREIGN KEY
(AVP_VRSTEPLACILA)
REFERENCES SPO999.VRSTEPLACILA
(VP_ID_VP)
ON DELETE NO ACTION
--ON UPDATE NO ACTION
ENFORCED
ENABLE QUERY OPTIMIZATION;
-- DDL Statements for foreign keys on Table SPO999.AVTVRSTEPLACILAVRPL
ALTER TABLE SPO999.AVTVRSTEPLACILAVRPL
ADD CONSTRAINT SQL100419145030630 FOREIGN KEY
(AVV_VRSTEPLACILA)
REFERENCES SPO999.VRSTEPLACILA
(VP_ID_VP)
ON DELETE NO ACTION
--ON UPDATE NO ACTION
ENFORCED
ENABLE QUERY OPTIMIZATION;
如果我一次运行一个它可以工作,而如果尝试同时运行我得到一个SQL错误-104一个令牌,字符或子句无效或丢失。
我找不到问题/解决方案
有什么建议吗? 谢谢
答案 0 :(得分:0)
我认为您可能无法在单个事务中引用同一列的这两个外键定义。
尝试在语句之间添加commit;
。
(您的SQL编辑器,根据其设置,可能会在您执行的每个语句块之后自动发送commit
。这可以解释这两种情况之间的区别。)