15

我来自 MySQL,以下查询在 Sybase 中不起作用。我应该如何转义单引号?

UPDATE Animals SET NAME = 'Dog\'s friends' WHERE uid = 12
4

2 回答 2

25

如果使用 Sybase,已经习惯了更多数据库用户体验过的 MySQL,您可能很快就会发现您无法使用反斜杠转义单引号。

那么如何在 Sybase 中转义引号?事实上,在 Sybase SQL 中,单引号充当转义字符。

有关两种“语言”的示例 UPDATE 语句,请参见下文:

MySQL

UPDATE Animals SET NAME = 'Dog\'s friends' WHERE uid = 12

赛贝斯

UPDATE Animals SET NAME = 'Dog''s friends' WHERE uid = 12

我不完全确定这对我来说有意义(尤其是因为它看起来像双引号)但是你去吧!

于 2012-09-21T10:07:44.380 回答
0

您可以创建一个自定义函数来转义引号:

CREATE FUNCTION "ESCAPE_QUOTES"(in a_string long varchar) 
returns long varchar
begin
  return replace(a_string, '''', '''''');
end
于 2020-12-29T15:31:00.410 回答