我有一個表具有以下結構插入問題 - 的MySQL通過PHP
Bay | Slot1 | Slot 2 | Slot 3 | Slot 4 | Slot 5
-----------------------------------------------
1 | time1 | time 2 | time 3 | time 4 | time 5
下面的代碼被用於插入:
for ($i =1; $i <= $bayCount; $i++) {
mysql_query("INSERT INTO $tableName (Bay) VALUES ($i)");
for ($j=0; $j<$slotCount ; $j++) {
echo $i;
echo $_slotColumns[$j];
mysql_query("INSERT INTO $tableName ($_slotColumns[$j]) VALUES (slotValues[$j]) WHERE Bay = $i ");
}
}
海灣是增量種類和值的整數對於插槽作爲數組傳遞(slotValues [$ j])使用for循環插入來生成插槽列。插槽值是文本類型。有人能告訴我發生了什麼事嗎?插槽值插入但不是插槽值。我做錯了什麼?
您應該查看SQL語法的基礎知識。 'INSERT'向數據庫添加一個新行,並且沒有'WHERE'。你需要的是'更新'。儘管一次創建整個查詢會更好。最好的辦法是手動寫出完整的查詢,然後檢查需要更改的部分。不推薦使用'mysql_query'。看看'mysqli'或'PDO' – 2013-03-07 09:57:54
這是哪個循環中的'slotColumns'和'slotValues'的值? – Alvaro 2013-03-07 09:57:59
@Steve我把數字5作爲插槽計數迭代以得到插槽列和插槽值是time1時間2 ... – DesperateLearner 2013-03-07 11:21:59