2012-01-21 68 views
0

我使用MySQL将多个条目上载到我们数据库中的表中。但是,下面的命令不起作用,并抛出此错误“#1136 - 列数不匹配第1行”...这是奇怪的,因为有4列,如下所示:批量数据库表数据插入使用MySQL

(我刚刚包括两名这里的结果作为数据的例子)

INSERT INTO state (state_id,country_id,state_name,active) VALUES (152,153),(5),(Test1,Test2),(1) 

这应该形成多行,并最终看起来像这样:

STATE_ID | country_id | state_name |积极 152 5测试1 153 5测试2 1

(看起来像在编辑表...但不呈现在这里,对不起!)

+1

你想插入多行吗? “(152,153)'应该去哪个列? –

+0

是的,多行。我应该指出这一点。所以最后它应该看起来像上面的编辑 – JoeW

+0

请参阅我的答案如何做到这一点。 –

回答

1

插入多行,您需要提供值的正确数量的每一行。

的语法是这样的,你其他的,不列后指定一个行:

INSERT INTO state 
(state_id,country_id,state_name,active) 
VALUES 
(152,5,'Test1',1), 
(153,5,'Test2',1); 
+0

完美,非常感谢! – JoeW

1

后的值,你也必须把组如果您定义了4列,则为4个值。

0

试试这个:

INSERT INTO state (state_id,country_id,state_name,active) VALUES ('(152,153)','(5)','(Test1,Test2)','(1)')