为什么我的INSERT INTO多个输入不起作用?

时间:2015-10-18 22:26:28

标签: php mysql sql-insert

我正在尝试使用php和mysql在我的数据库中放置多条记录。如果我不尝试做第二次INSERT,我可以做第一次INSERT。一旦我添加第二个插入,根本没有写入任何记录。我认为这是一个语法错误,但我尝试了来自http://www.w3schools.com/php/php_mysql_insert_multiple.aspinsert multiple rows via a php array into mysql的非常清晰的示例,但仍无效。唯一的区别是声明末尾的连接和半连接。

任何想法我可能做错了什么?

 $query="INSERT INTO  myTable (
 `user1` ,
 `user2` ,
 `user3` 
 )
 VALUES ('data1', 'data2' , 'data3');";

   $query .="INSERT INTO  myTable (
 `user1` ,
 `user2` ,
 `user3` 
 )
 VALUES ('data4', 'data5' , 'data6')";

1 个答案:

答案 0 :(得分:6)

您不会编写单独的查询并将它们附加在一起(除非您使用的是mysqli_multi_query,这些链接表明您没有这样做,而且无论如何都会效率低下)。构建INSERT语句后,只需要插入逗号分隔的值列表:

// Removed semi-colon terminating the query
$query="INSERT INTO  myTable (
 `user1` ,
 `user2` ,
 `user3` 
 )
 VALUES ('data1', 'data2' , 'data3')";

// removed insert statement, added required leading comma
$query .=",('data4', 'data5' , 'data6')";