2013-02-11 149 views
0

我试图运行多个ALTER TABLE语句对我的数据库IBM DB2多次修改表的语句

我使用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

什么工具/程序是您使用运行报表? – 2013-02-11 10:26:15

回答

0

我认为这是可能的,你不能有一个单一的交易中引用同一列这两个外键定义。

尝试添加语句之间commit;。 (您的SQL编辑器,根据其设置,可能会在您执行的每个语句块后自动发送commit,这将解释两种情况之间的差异)。

+0

我把所有的语句在一个文件中,并从CLP运行。有效 – Yebach 2013-02-12 12:40:17