插入多个表:mysql

时间:2012-08-24 13:11:03

标签: mysql sql

假设我们有v1,v2,v3和v4值,其中v1和v2将插入表t1; v3和v4进入表t2 我们通常可以使用:

INSERT INTO t1 VALUES(v1,v2)
INSERT INTO t2 VALUES(v3,v4)

但是,如果我们想在一个声明中这样做?

类似于INSERT INTO t1 VALUES(v1,v2), t2 VALUES(v3,v4)

有人让我使用交易来实现这一点,但我不知道这是否适用于MyISAM。

我正在使用MySql数据库。

1 个答案:

答案 0 :(得分:2)

抱歉,每个INSERT语句只有一个表:http://dev.mysql.com/doc/refman/5.5/en/insert.html

您可以使用ALTER TABLE将引擎更改为InnoDB,但请确保它不会破坏任何内容:

ALTER TABLE t1 ENGINE = InnoDB;

最后一种可能性(如果你真的绝对使用事务)将 denormalize 数据 - 将t1和t2合并到同一个表中。但我首先推荐InnoDB。