如何在Sybase中转义单引号

时间:2012-09-21 10:07:44

标签: sql sybase

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

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

2 个答案:

答案 0 :(得分:23)

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

那么你如何在Sybase中逃避引用?实际上,在Sybase SQL中,单引号充当转义字符。

请参阅下文,了解两种“语言”中的UPDATE语句示例:

<强>的MySQL

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

<强>的Sybase

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

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

答案 1 :(得分:0)

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

CREATE FUNCTION "ESCAPE_QUOTES"(in a_string long varchar) 
returns long varchar
begin
  return replace(a_string, '''', '''''');
end