了解SQL 中的列和行不符錯誤
使用SQL INSERT 語句將資料匯入表時,請確保列數與提供的值計數匹配。可能出現的常見錯誤是「列計數與第 1 行的值計數不符。」
在此上下文中,術語「列」是指表中保存特定資料值的欄位。每列都有唯一的名稱和資料類型。另一方面,「row」表示對應於表中特定記錄的一組完整的資料值。
錯誤「Column count does not match value count at row 1」表示 INSERT語句嘗試在表中新增一行,其值的數量與表包含的列的數量不同。
例如,請考慮下表定義:
CREATE TABLE wp_posts ( id INT NOT NULL, author_id INT NOT NULL, date_created TIMESTAMP NOT NULL, date_modified TIMESTAMP NOT NULL, );
如果您嘗試使用以下INSERT 語句在此表中插入一行:
INSERT INTO wp_posts VALUES (2781, 3, '2013-01-04 17:24:19', '2013-01-05 00:24:19');
您將會遇到上述錯誤。這是因為 INSERT 語句提供了四個值,但 wp_posts 表有五個欄位(id、author_id、date_created、date_modified 和 wp_posts_status)。
要解決此錯誤,您必須為每列提供一個值。您可以透過在 INSERT 語句中明確指定列名稱來完成此操作:
INSERT INTO wp_posts (id, author_id, date_created, date_modified) VALUES (2781, 3, '2013-01-04 17:24:19', '2013-01-05 00:24:19');
透過提供資料列名稱,您可以指示資料庫將哪些值插入到哪些欄位中。這可確保列計數與值計數匹配,並且插入操作可以成功完成。
以上是如何修復 SQL 中的「列計數與第 1 行的值計數不符」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!