2011-05-14 109 views
0

我需要插入一些字符串」在裏面,例如「XY-X」,經過一番研究,我發現下面的語法:SQL服務器:如何插入「文字

table_b.element = 'replace('x.y.x','',''')' 

的問題是, SQL Server給我一個錯誤:

Unclosed quotation mark after the character string ')

我該如何解決這種情況?我在這花了大約2個小時。

是否有我需要使用的轉義字符?

回答

3

你需要寫兩個單引號:

replace('x.y.x','','''') 

(這是適用於所有的SQL數據庫)

0

'是逃脫'',所以如果在SQL語句中一個字符串;

update t set fld = '''x.y.x''' 

如果你傳遞一個值給一個過程,例如或您構建一個聲明,然後使用您的客戶端語言,你必須replace(data, "'", "''")(或使用預準備語句)

+0

「代替(」 XYZ」,「」 「,」''「)'在字符串')'後面給我一個未封閉的引號 – 2011-05-14 14:23:14

+0

它不清楚你需要什麼?你很少需要在** sql語句中使用replace()**來轉義任何東西;如果你傳遞/建立一個包含'的字符串,那麼你需要在客戶端語言中轉義它 – 2011-05-14 14:25:58