MySQL INSERT 中的列計數不符
錯誤「列計數與第1 行的值計數不符」表示資料庫表中的列數以及INSERT 語句中提供的值的數量。
在提供的程式碼中,嘗試使用 INSERT 語句將值插入到名為「dbname」的表中。查詢列出了9 個欄位(「id」、「Name」、「Description」、「shortDescription」、「Ingredients」、「Method」、「Length」、「dateAdded」和「Username」),但只提供了8個值在VALUES 子句中。具體來說,“方法”值丟失。
列計數和值計數之間的不匹配會導致錯誤。若要解決此問題,請確保查詢包含正確的列數和值。在這種情況下,請在執行 INSERT 語句之前新增「Method」列的值。
以下是添加了缺失值的修改後的代碼:
<code class="php">$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Length, dateAdded, Username) VALUES ('', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s')", mysql_real_escape_string($name), mysql_real_escape_string($description), mysql_real_escape_string($shortDescription), mysql_real_escape_string($ingredients), mysql_real_escape_string($method), // Method value added mysql_real_escape_string($length), mysql_real_escape_string($dateAdded), mysql_real_escape_string($username));</code>
透過提供正確的數字INSERT語句中所列的值,可以避免錯誤,並且資料可以成功插入資料庫。
以上是為什麼我的 MySQL INSERT 語句會拋出「列計數不符」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!