簡體   English   中英

我在嘗試更新列值 mysql 時出錯

[英]I am getting a error trying to UPDATE a column value mysql

所以這是桌子

在此處輸入圖片說明

我正在嘗試使用值 (TINYINT) 45 更新名稱為London的所有city 's(VARCHAR) 的狀態。

這是我的查詢

UPDATE supplier
SET status = 45
WHERE city = ‘ London‘;

這是我收到的錯誤消息,但我看不到語法錯誤

在此處輸入圖片說明

結果應該是所有城市名稱 London 的狀態都為 45

問題是您使用引號。 '' 確保您使用了正確的單引號(而不是花哨的 unicode 單引號):

UPDATE supplier
SET status = 45
WHERE city = 'London';

此處查看引號中的差異。

在 MySQL 和可能的許多其他 RDMS 中,反引號用於表和列標識符,盡管根本不是強制性的……除非您的標識符是保留關鍵字或包含空格或其他特定字符(請參閱此處的 mysql 文檔)。

另一方面,單引號用於任何地方的字符串值,在插入語句、更新語句、where 子句中,...。 也常用於日期。

這就是為什么,正如有人建議的那樣,你應該寫:

UPDATE supplier
SET status = 45
WHERE city = 'London';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM