我需要在没有PHP循环的情况下将相同的数据插入到我的MySQL表中。我这样做的原因是因为我有一个具有Auto_Increment功能的列,并且该列与其他表关联。
所以,我只需要插入一些完全相同的数据,并且它是多行(动态),但是使用下面的单个INSERT语法:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
如何使用这个单一的INSERT语法,但产生n行?
答案 0 :(得分:2)
你可以这样做:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
, ('$SMSMessage2'), ('$SMSMessage3'), ('$SMSMessage4');
答案 1 :(得分:0)
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage'),('$SMSMessage')
,('$SMSMessage'),('$SMSMessage')
如果动态完成,
$n=5;
for ($i=0;$i<$n;$i++){$values.="('$SMSMessage'),";}
$values=substr($values,0,-1);
SQL是:
INSERT INTO outbox_multipart (TextDecoded) VALUES $values
答案 2 :(得分:0)
尝试这样的事情
$sql = mysql_query("INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
, ('$SMSMessage'),('$SMSMessage'),('$SMSMessage')");
此外,您知道,mysql_*
已被弃用。因此,尝试使用mysqli_ *或PDO进行查询。
答案 3 :(得分:0)
mysql_query("INSERT INTO `table`(`this`) VALUES (`that`); INSERT INTO `table`(`this`) VALUES (`that`);");
答案 4 :(得分:0)
假设你想要3个插入,只需这样:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage'),('$SMSMessage'),('$SMSMessage');