ホームページ > バックエンド開発 > PHPチュートリアル > MySQL クエリで「行 1 の列数が一致しません」エラーが発生するのはなぜですか?

MySQL クエリで「行 1 の列数が一致しません」エラーが発生するのはなぜですか?

Patricia Arquette
リリース: 2024-10-27 10:20:31
オリジナル
297 人が閲覧しました

Why am I getting the

PHP、MySQL エラー: 行 1 の列数が一致しません

このエラー、「列数が行 1 の値数と一致しません」 " は、データを挿入しようとしている列の数と、提供されている実際の値の数との間に不一致があることを示します。

提供されたコード スニペットでは、次のコードを使用してテーブルにデータを挿入しようとしています。 8 つの値 ($name、$description、$shortDescription、$ingredients、$method、$username、$length、$dateAdded) を使用する 9 つの列 (id、名前、説明、shortDescription、成分、メソッド、長さ、dateAdded、ユーザー名)。

エラーの原因:

INSERT クエリで定義された列の数と、それに渡される値の数が一致しないためにエラーが発生します。 。この場合、クエリでは 9 個の値が必要ですが、「image」列を除いて 8 個だけが提供されています。

解決策:

エラーを解決するには、次のことを確認してください。値の数が INSERT クエリの列の数と一致することを確認します。 「image」列の欠落している値を追加することも、挿入される列のリストからその値を削除することもできます。

コード変更:

オプション1: 欠損値を追加します

<code class="php">$query = sprintf("INSERT INTO dbname (id, Name, Description, shortDescription, Ingredients, Method, Image, Length, dateAdded, Username) VALUES ('', '%s', '%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),
    '', // Placeholder for empty 'image' value
    mysql_real_escape_string($length),
    mysql_real_escape_string($dateAdded),
    mysql_real_escape_string($username));</code>
ログイン後にコピー

オプション 2: 「画像」列を削除します

<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),
    mysql_real_escape_string($length),
    mysql_real_escape_string($dateAdded),
    mysql_real_escape_string($username));</code>
ログイン後にコピー

以上がMySQL クエリで「行 1 の列数が一致しません」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート