我需要插入相同的數據到我的MySQL表,而沒有PHP循環。我這樣做的原因是因爲我有一個具有Auto_Increment功能的列,並且該列與其他表關聯。MySQL:插入完全相同的數據多行無PHP循環
所以,我只需要插入一些完全相同數據和它的多行(動態),但通過下面一個INSERT語句的語法:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
怎麼能有這種單一的INSERT語法,但產生n個行數?
我需要插入相同的數據到我的MySQL表,而沒有PHP循環。我這樣做的原因是因爲我有一個具有Auto_Increment功能的列,並且該列與其他表關聯。MySQL:插入完全相同的數據多行無PHP循環
所以,我只需要插入一些完全相同數據和它的多行(動態),但通過下面一個INSERT語句的語法:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
怎麼能有這種單一的INSERT語法,但產生n個行數?
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
你可以這樣做:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
, ('$SMSMessage2'), ('$SMSMessage3'), ('$SMSMessage4');
'SMSMessage2'是一個變量,而不是一個字符串。 –
他提到了相同的數據,即變量'$ SMSMessage'中的字符串 –
@ coder1984我同意你的看法,但是OP在這方面並不清楚,他沒有說變量。這是他寫的聲明中的'$ SMSMessage'。所以我做了他所問的問題:'如何得到這個單一的INSERT語法,但是產生n個行' –
嘗試這樣的事情
$sql = mysql_query("INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage')
, ('$SMSMessage'),('$SMSMessage'),('$SMSMessage')");
此外,只是你知道,mysql_*
已被棄用。因此,請嘗試使用mysqli_ *或PDO進行查詢。
mysql_query("INSERT INTO `table`(`this`) VALUES (`that`); INSERT INTO `table`(`this`) VALUES (`that`);");
假設你想插入3簡單地這樣做:
INSERT INTO outbox_multipart (TextDecoded) VALUES ('$SMSMessage'),('$SMSMessage'),('$SMSMessage');
建立一個觸發器。 – wesside
該怎麼辦?例如請。 –