由于特殊场景应用,我们的工程脚本中不能直接使用含字符'和字符+的内容。也就是,字符串ab
不能表示为 'ab' 
也不能表示为 char(97)+char(98)我自己构造了一种如下:
DECLARE @S nchar(2)
SET @S = STUFF(char(98), 1, 0, char(97))
select @S但是感觉太麻烦了,如果我要构造abcdefg.....xyz很长的字符串,这个不会写太长了。请教各位高手了。

解决方案 »

  1.   

    举例一下,一般应用是 select * from table where item = 'xxxx'。现在规定不能有字符'和字符+,所以该使用不成立。因此我变通改为:
    DECLARE @S nchar(2)
    SET @S = STUFF(char(98), 1, 0, char(97))
    select * from table where item = @S但如果我需要查询的是 'abcdefg....xyz',那么我用stuff和char来构造这个字符串是不是会写的很长。
    所以求一简单的方法,多谢。
      

  2.   

    --trySET QUOTED_IDENTIFIER OFF
    select * from table where item = "xxxx"
    SET QUOTED_IDENTIFIER ON