ホームページ >バックエンド開発 >PHPチュートリアル >引用符を使用しているにもかかわらず、PostgreSQL クエリで「列名が存在しません」が返されるのはなぜですか?
Postgresql ステートメント エラー: 列名が存在しません
PostgreSQL データベースでは、「列名が存在しません」というエラー メッセージが表示される場合があります特定の列名でクエリを実行しようとしたとき
問題の説明:
ユーザーは、「lName」(大文字の N) という名前の列を含むテーブルを含む単純な PostgreSQL データベースをクエリしているときに問題に直面しています。必要に応じて列名を引用しても、列 "Smith" が存在しないことを示すエラーが返されます。
解決策:
問題は、列が正しくないことにあります。 LIKE 句で使用される文字列リテラルの形式。 PostgreSQL では、文字列リテラルは二重引用符 (") ではなく一重引用符 (') で囲む必要があります。
正しいクエリ:
SELECT * FROM employee WHERE "lName" LIKE 'Smith'
説明:
LIKE 句内の二重引用符 (") は引用符で囲まれたことを示します文字列リテラルではなく識別子です。したがって、クエリは「Smith」を文字列比較値ではなく列名として誤って解釈しました。
追加の注意事項:
以上が引用符を使用しているにもかかわらず、PostgreSQL クエリで「列名が存在しません」が返されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。