ホームページ >バックエンド開発 >PHPチュートリアル >引用符を使用しているにもかかわらず、PostgreSQL クエリで「列名が存在しません」が返されるのはなぜですか?

引用符を使用しているにもかかわらず、PostgreSQL クエリで「列名が存在しません」が返されるのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-16 02:31:10768ブラウズ

Why Does My PostgreSQL Query Return

Postgresql ステートメント エラー: 列名が存在しません

PostgreSQL データベースでは、「列名が存在しません」というエラー メッセージが表示される場合があります特定の列名でクエリを実行しようとしたとき

問題の説明:

ユーザーは、「lName」(大文字の N) という名前の列を含むテーブルを含む単純な PostgreSQL データベースをクエリしているときに問題に直面しています。必要に応じて列名を引用しても、列 "Smith" が存在しないことを示すエラーが返されます。

解決策:

問題は、列が正しくないことにあります。 LIKE 句で使用される文字列リテラルの形式。 PostgreSQL では、文字列リテラルは二重引用符 (") ではなく一重引用符 (') で囲む必要があります。

正しいクエリ:

SELECT *
FROM employee
WHERE "lName" LIKE 'Smith'

説明:

LIKE 句内の二重引用符 (") は引用符で囲まれたことを示します文字列リテラルではなく識別子です。したがって、クエリは「Smith」を文字列比較値ではなく列名として誤って解釈しました。

追加の注意事項:

  1. フィールドにワイルドカードを含めることを検討してください。 LIKE 句を使用すると、文字列の部分一致が可能になります。
  2. 列名が指定されたテーブルに存在することを確認してください。同様のエラーを避けてください。

以上が引用符を使用しているにもかかわらず、PostgreSQL クエリで「列名が存在しません」が返されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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