ホームページ >データベース >mysql チュートリアル >以下にいくつかのタイトル オプションを示し、質問と解決策を質問形式でキャプチャします。 * MySQL INSERT エラー: 「列数が値数と一致しません」 - 修正方法? * \'列数を実行します

以下にいくつかのタイトル オプションを示し、質問と解決策を質問形式でキャプチャします。 * MySQL INSERT エラー: 「列数が値数と一致しません」 - 修正方法? * \'列数を実行します

Barbara Streisand
Barbara Streisandオリジナル
2024-10-26 15:45:02350ブラウズ

Here are a few title options, capturing the query and solution in a question format:

* MySQL INSERT Error:

エラー処理: MySQL 挿入での「列数が値の数と一致しません」の解決

MySQL で、あるテーブルから別のテーブルにデータを挿入しようとすると、次のような問題が発生する可能性があります。 「#1136 - 列数が行 1 の値数と一致しません。」というエラーが発生します。これは、INSERT ステートメントで指定された列の数が、取得したデータの列の数と一致しない場合に発生します。

エラーの原因と解決策

指定されたクエリでは、エラーが発生します。 INSERT ステートメントは、サブクエリの結果を複数の列に挿入しようとします。ただし、サブクエリは 3 つの列 (magazine_subscription_id、subscription_name、magazine_id) のみを取得しますが、INSERT ステートメントでは 4 つの列 (magazine_subscription_id、subscription_name、magazine_id、status) を指定します。

このエラーを解決するには、INSERT ステートメントを変更します。以下の変更されたクエリに見られるように、ステータス列の欠落している値を直接含めるには:

INSERT INTO mt_magazine_subscription ( 
  magazine_subscription_id, 
  subscription_name, 
  magazine_id, 
  status ) 
SELECT 
  magazine_subscription_id, 
  subscription_name, 
  magazine_id, 
  '1'
FROM tbl_magazine_subscription
ORDER BY 
  magazine_subscription_id ASC;

この変更されたクエリでは、「1」リテラルがステータス列の値として直接指定されており、列数が値数と一致することを確認します。

以上が以下にいくつかのタイトル オプションを示し、質問と解決策を質問形式でキャプチャします。 * MySQL INSERT エラー: 「列数が値数と一致しません」 - 修正方法? * \'列数を実行しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。