我正在尝试通过执行以下操作在SQL 2008中运行查询:
@query varchar(max)
SET @query = 'SELECT * FROM Table WHERE [Name] = ' 'Karl' ' '
EXEC(@query)
问题是由于某种原因
'Karl'
周围的撇号不能被转义,即查询以...WHERE [Name] = Karl
执行并失败。有人有建议吗?
谢谢
卡尔
最佳答案
您可以通过多种方式在SQL Server中转义字符数据,甚至有人主张使用QUOTENAME()函数。
如果您真的想对本主题领域有扎实的理解,那么我建议您看一下有经验的SQL Server开发人员认为对于将Dynamic T-SQL集成到您的方法中必不可少的内容。编码。
The Curse and Blessings of Dynamic SQL
关于sql-server - SQL转义 ' ',我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1062083/