列 'Mary' が存在しません: SQL クエリのトラブルシューティング
という名前の人の電話番号を取得しようとしていますSQL クエリを使用した「Mary」。ただし、列 'Mary' が存在しないというエラーが発生します。
ここでの問題は、'Mary' の文字列リテラルを区切る方法にあります。二重引用符 (' ') はスマート クォーテーションとみなされ、一重引用符 (') はプレーン クォーテーションと見なされます。 SQL では、デフォルトの文字列区切り文字は一重引用符です。
この問題を解決するには、名前 'Mary' を単純な一重引用符で区切る必要があります。修正されたクエリは次のとおりです。
SELECT telephone.telephonenumber as tel FROM person, telephone WHERE person.idperson = telephone.idperson AND person.personname = 'Mary';
単純な一重引用符を使用すると、列名 'Mary' は列識別子ではなく値として扱われます。これによりエラーが解消され、予想される電話番号が返されるはずです。
以上がSQL クエリが「列 'Mary' が存在しません」というメッセージで失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。