2009-05-25 56 views
0

我在MySQL中有一个脚本创建两个表,第二个表引用第一个表中的一个字段,现在当我尝试在一个批处理中运行此脚本时,它返回一个错误。我的猜测是它在创建表之前检查第二个表定义中的引用表。MySQL中的批处理问题?

任何想法如何我可以一次创建两个表?

感谢

编辑:

例子:

CREATE TABLE table1 
(
    ID INT NOT NULL, 
    PRIMARY KEY (ID) 
) ENGINE=InnoDB; 

CREATE TABLE table2 
(
    ID INT NOT NULL, 
    FID INT NOT NULL , 
    PRIMARY KEY (ID), 
    FOREIGN KEY (FID) REFERENCES table1 (ID) 
) ENGINE=InnoDB; 

如果我创建第一个表,然后创建第二个表一切正常,但是当我在一个批次运行这个返回一个错误

更新: 看来,这个问题已经用MySQL 5.5解决了。即使在某些表定义中有外键约束,它现在也可以在一批中正常工作。

+0

你能给一些示例代码来展示你想要做什么吗? – 2009-05-25 13:54:17

+0

你会得到什么错误信息? – Simon 2009-05-25 13:57:14

回答

3

简单的事情,先创建2个表格,然后在 之后做alter table并添加引用。