列「Mary」不存在:查詢錯誤
執行查詢時,您可能偶爾會遇到錯誤訊息,指示特定列不存在,即使它存在於您的資料庫中。其中一種情況是查詢引用帶有錯誤字元的列名。
The Case of 'Mary'
在提供的範例中,錯誤與該列有關「瑪麗」。然而,在檢查查詢時,很明顯查詢中沒有名為「Mary」的欄位。相反,「Mary」應該是指派給「personname」欄位的值。
這裡的關鍵要點是,錯誤是由「Mary」的錯誤字元編碼引起的。在查詢中,「Mary」用智慧引號 (“Mary”) 括起來,它們是 Unicode 字元。資料庫系統通常偏好使用 ASCII 編碼的純單引號 ('Mary')。
解決問題
要修正此問題,只需將智慧引號替換為查詢中的純單引號。如下修改您的查詢:
SELECT telephone.telephonenumber as tel FROM person, telephone WHERE person.idperson = telephone.idperson AND person.personname = 'Mary';
透過進行此細微調整,您的查詢現在將正確搜尋名為「Mary」的人員並檢索他們的電話號碼。
以上是儘管列存在,為什麼我的查詢失敗並顯示'列'Mary'不存在”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!