我有这个示例T-SQL查询,并在SQL-Server-2008上尝试使用它。
DECLARE nvarchar(1000) @wstring = "I asked my son's teacher, "How is my son doing now?""
UPDATE tablename SET columnname = ' " & @wstring & " ' where ... blah ... blah我知道上面的查询会抛出错误。
那么,如何处理-转义SQL-Update语句中的单引号和双引号呢?
发布于 2012-01-20 01:05:34
您可以使用反斜杠对引号进行转义:
"I asked my son's teacher, \"How is my son doing now?\""发布于 2012-01-20 01:07:57
在sql语句中使用两个单引号对它们进行转义。双引号应该不是问题:
SELECT 'How is my son''s school helping him learn? "Not as good as Stack Overflow would!"'打印:
How is my son's school helping him learn? "Not as good as Stack Overflow would!"
发布于 2014-01-28 00:22:06
根据编程语言的不同,您可以使用函数将双引号替换为两个双引号。
例如,在PHP中,这将是:
str_replace('"', '""', $string);如果您试图仅使用SQL来实现此目的,那么REPLACE()可能就是您所需要的。
因此,您的查询将如下所示:
"UPDATE Table SET columnname = '" & REPLACE(@wstring, '"', '""') & "' where ... blah ... blah "https://stackoverflow.com/questions/8930151
复制相似问题