猿问

如何避免SQL Server中的单引号?

如何避免SQL Server中的单引号?

我在试着insert中的表中的一些文本数据SQL Server 9.

该文本包括一个单引号(‘)。

我怎么才能逃避呢?

我试着用两个单引号,但它给我带来了一些错误。

例如。insert into my_table values('hi, my name''s tim.');


慕慕森
浏览 960回答 3
3回答

青春有我

单引号通过加倍转义。就像你在你的例子中向我们展示的那样。下面的SQL说明了此功能。我在SQLServer 2008上测试了它:DECLARE @my_table TABLE (    [value] VARCHAR(200))INSERT INTO @my_table VALUES ('hi, my name''s tim.')SELECT * FROM @my_table结果value==================hi, my name's tim.

拉丁的传说

如果用另一个单引号转义你的单引号对你没有用(就像我最近的一个单引号没有效果一样)REPLACE()),您可以使用SET QUOTED_IDENTIFIER OFF在查询之前,SET QUOTED_IDENTIFIER ON在你的询问之后。例如SET QUOTED_IDENTIFIER OFF;UPDATE TABLE SET NAME = REPLACE(NAME, "'S", "S");SET QUOTED_IDENTIFIER ON;-- set OFF then ON again

交互式爱情

不如:insert into my_table values('hi, my name'+char(39)+'s tim.')
随时随地看视频慕课网APP
我要回答