2012-02-20 70 views
0

我有一个表单上回答的问题列表。这些问题在同一个MySQL表上反复输入到同一个字段中,名为submission_questions。目前我正在为每个插入做一个查询,我相信有更好的方法,我只是无法找到它。我至今是:如何将多个INSERT查询组合到同一个表中

//Insert Department into database 
$query_2 = "INSERT INTO submission_questions (submission_id, question_id, answer) VALUES ('" . $subid . "','4', '" . $dept . "')"; 
mysql_query($query_2) or die(mysql_error()); 

//Insert GPO Question into database 
$query_3 = "INSERT INTO submission_questions (submission_id, question_id, answer) VALUES ('" . $subid . "','18', '" . $gpo . "')"; 
mysql_query($query_3) or die(mysql_error()); 

我可以结束了这些,所以我需要他们结合20,但我对如何做到这一点,因为他们被投入同一领域迷茫。我在SELECT语句中看到了很多帖子,但在INSERT语句中没有看到。有人能指引我朝着正确的方向吗?

+0

'ext/mysql'已正式被弃用。请使用mysqli或PDO,并请使用准备好的语句和占位符。 – pilcrow 2012-02-20 17:27:30

+0

@pilcrow谢谢你的建议。我已经把这个项目移到了太远的地方以便现在切换。但是当我完成这个任务时,我的第一个目标是转向PDO。我希望这不是那么难学 – 2012-02-20 21:23:19

回答

4

引用到manual它说: INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9)

PS。您不必将Int值放在单引号中。

+0

很容易理解的答案。谢谢一堆! – 2012-02-20 21:21:47

+0

没问题:) – 2012-02-20 21:22:30

4

据我所知,你可以使用如下代码同时插入多条记录:

INSERT INTO example 
    (example_id, name, value, other_value) 
VALUES 
    (100, 'Name 1', 'Value 1', 'Other 1'), 
    (101, 'Name 2', 'Value 2', 'Other 2'), 
    (102, 'Name 3', 'Value 3', 'Other 3'), 
    (103, 'Name 4', 'Value 4', 'Other 4'); 

希望这有助于。

+0

绝对有帮助。万分感谢! – 2012-02-20 20:32:47

相关问题