SQL を使用してテーブルにデータを挿入しようとしたときの「列数が行 1 の値数と一致しません」エラー
のトラブルシューティングステートメントを実行すると、「列数が行 1 の値数と一致しません」というエラー メッセージが表示されることがあります。これは、INSERT ステートメントで指定された値の数と、ターゲット テーブルで定義された列の数との間に不一致があることを示しています。
あなたの特定のケースでは、SQL ダンプ ファイルの最後のエントリには、 2 つの値 (2781 と 3)。これは、少なくとも 3 つの列を持つテーブルにデータを挿入しようとしていることを意味します。値 5 と 5 を持つ別のレコードを挿入しようとすると、テーブル定義で追加の列が設定されることが想定されているため、エラーが発生します。
このエラーを解決するには、INSERT ステートメントを変更して明示的な列名を含める必要があります。 。これにより、テーブル内のどの列が提供された値を受け取るかを指定できます。以下に例を示します。
INSERT INTO `wp_posts` ( `id`, `author_id`, `post_date`, `post_date_gmt` ) VALUES ( 5, 5, '2005-04-11 09:54:35', '2005-04-11 17:54:35' );
この改訂されたステートメントでは、値 5、5、'2005-04-11 09 を受け取る列 (id、author_id、post_date、および post_date_gmt) を明示的に識別しました。 :54:35'、および '2005-04-11 17:54:35'、
列名を指定すると、テーブル内の正しい列に値が適切に割り当てられるようになり、「列数が行 1 の値数と一致しません。」というエラーが回避されます。
以上が「列数が行 1 の値数と一致しません」という SQL エラーを解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。