簡體   English   中英

使用UPDATE時轉義mysql語句中的特殊字符

[英]escaping special character in mysql statements while using UPDATE

我正在嘗試使用更新字段

UPDATE table set field='some_variable' where id=1;

這里的問題是some_variable包含其中包含多個特殊字符的數據。 因此我無法使用'some_variable'或“ some_variable”,因為遇到第一個相同字符('或“)時它會破裂並失敗。我該如何克服呢?

謝謝。 麥克風

有兩種解決方案,第一種是使用mysql_real_escape_string() ,第二種是使用准備好的語句。 您沒有提到您的編程語言是什么,但是可以肯定它支持准備好的語句或真正的轉義符。

除實際轉義外,如果您的字段是char或varchar,則應按以下方式修改查詢:

UPDATE table set field='some_variable' where id=1;

通常,您只需要轉義保留的字符-有關特定參考,請參見MySQL文檔 如果您直接執行查詢(即:在mysql shell中),則必須手動進行轉義。 大多數語言都會為您提供轉義功能-例如,在PHP中,它是mysql_real_escape_string()

暫無
暫無

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

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