ホームページ >データベース >mysql チュートリアル >SELECT INTO を使用すると「宣言されていない変数」エラーが発生するのはなぜですか?
SELECT INTO クエリ使用時の宣言されていない変数エラー
結果を変数に格納する SELECT INTO ステートメントを実行しようとすると、次のような問題が発生する可能性があります。次のエラーが発生しました:
宣言されていない変数:
このエラーは通常、INTO 句で指定された変数が事前に宣言または初期化されていない場合に発生します。
例
次のクエリを考えてみましょう:
SELECT id_subscriber INTO newsletter_to_send FROM subscribers
このクエリを実行しようとすると、エラー メッセージ「#1327 -」が表示されます。未宣言の変数: Newsletter_to_send"。このエラーは、変数 "newsletter_to_send" が作成されていないか、値が割り当てられていないことを示します。
解決策
このエラーを解決するには、次のことを行う必要があります。代わりに INSERT...SELECT ステートメントを使用してください。
INSERT INTO newsletter_to_send SELECT id_subscriber FROM subscribers
INSERT...SELECT ステートメントを使用すると、クエリの結果を指定されたテーブルに直接挿入でき、プロセス内にターゲット変数を効果的に作成できます。
補足
INSERT...SELECT ステートメントで使用されるクエリが正しく、重複レコードが生成されないことを確認することが重要です。必要に応じて、WHERE 句を追加してデータをフィルタリングすることを検討してください。
以上がSELECT INTO を使用すると「宣言されていない変数」エラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。