ワードプレスのPHPプログラム等で、Column count doesn’t match value count at row 1 というエラーが出力された場合の原因と対処方法をご紹介いたします。

Column count doesn’t match value count at row 1 とは?

このエラーはデータベースに情報を挿入するときにそのプログラムにバグがあるときに出力されます。
わかりやすく書きますと

データベースにデータを挿入しようとしましたが、データベースに定義されているカラム(データの箱のようなもの)の数があっていませんよ

という意味になります。

例えば、ワードプレスの投稿が含まれているデータベースのテーブルwp-postは、

ID主インデックス
post_authorインデックス
post_dateインデックス
post_date_gmt
post_content
post_title
post_excerpt
post_statusインデックス
comment_status
ping_status
post_password
post_nameインデックス
to_ping
pinged
post_modified
post_modified_gmt
post_content_filtered
post_parentインデックス
guid
menu_order
post_typeインデックス
post_mime_type
comment_count

という23ものデータのカラム(区切り)がありますが、このテーブルに

INSERT INTO `wp_posts` VALUES(5, 5, '2005-04-11 09:54:35', '2005-04-11 17:54:35')

等のSQL文でそれより少ない数のデータの区切り(上記例では4つのデータ区切りしかありません)で、データを挿入しようとすると、 Column count doesn’t match value count at row 1 エラーが出て、処理が中止されてしまいます。

Column count doesn’t match value count at row 1 の対処方法

この場合、データを挿入しようとする元々のテーブルのカラムの数を調べて、そのカラムの数と、データの様式が合致しているかご確認いただき、データをデータベースに挿入しようとするSQL文のカラムの数を合わせることでこのエラーができなくなります。

お試しいただけましたら幸いです。

WordPress ワードプレスのバグやエラーの修正・サイトの復旧のご依頼・ご相談はワードプレスドクターまでお気軽にお送りください