在 SQL Server 中如何转义单引号?

36 浏览
0 Comments

在 SQL Server 中如何转义单引号?

我正在尝试将一些文本数据插入到 SQL Server 9 的表中。

文本包含单引号字符\'

我如何对其进行转义?

我尝试使用两个单引号,但出现了一些错误。

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

admin 更改状态以发布 2023年5月22日
0
0 Comments

如果使用另一个单引号来转义单引号并没有为您工作(就像我的最近一个 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

0
0 Comments

\n\n单引号需要重复使用来进行转义,就像你在示例中展示的一样。以下SQL演示了这种功能。我在SQL Server 2008上测试过它:\n

DECLARE @my_table TABLE (
    [value] VARCHAR(200)
)
INSERT INTO @my_table VALUES ('hi, my name''s tim.')
SELECT * FROM @my_table

\n

结果

\n

value
==================
hi, my name's tim.

0