zoukankan      html  css  js  c++  java
  • sql server中sql语句中单引号怎么转义?

    sql server有两个转义符:
    ' 默认情况下, '是字符串的边界符, 如果在字符串中包含', 则必须使用两个', 第1个'就是转义符


    <![cdata[
    另一个转义符是"

    当SET QUOTED_IDENTIFIER OFF时, "是字符串边界符, 字符串中的"必须用两个"表示。

    vb: "" <=> "
    sql server 2000: ''' <=> '

    eg:

    declare @SearchType nvarchar(50)
    declare @SearchString nvarchar(255)
    declare @SearchKey nvarchar(50)
    declare @SearchSql nvarchar(2000)

    set @SearchType = '2'
    set @SearchKey = 'd'

    set @SearchString = CASE @SearchType
                                when '1'  then '1 = 1'
                                when '2'  then  'p.ProjectName like ''' + '%'  +  @searchkey + '%'  + ''''
                                when '3'  then  'p.ProjectCity like ''' + '%'+ @searchkey + '%' +''''
                                when '4'  then  'c.CateName like '''  + '%' + @searchkey + '%' + ''''
                                when '4'  then  'p.ProjectManager like ''' + '%' + @searchkey + '%' +''''
                                END

    set @SearchSql = N'

    SELECT p.*,datename(year,ProjectPostTime)+ '   +  '''-''' + ' + datename(month,ProjectPostTime)+ '+ '''-''' + ' + datename(day,ProjectPostTime)' + ' as PostTime, m.EmpName,c.CateName FROM proProject As p ,mrBaseInf As m ,proCate c WHERE p.EmpID = m.EmpID and p.CateID = c.CateID  and '
     
     + @SearchString


    print(@SearchSql)

    exec(@SearchSql)

    转自:http://www.cnblogs.com/zgqys1980/archive/2006/08/04/468018.html

  • 相关阅读:
    [mysql] information_schema数据库表
    Linux 进程操作_12
    Linux 标准输入输出_11
    apache2
    poj 3083 Children of the Candy Corn 夜
    poj 2151 Check the difficulty of problems 夜
    poj 3274 Gold Balanced Lineup 夜
    poj 3414 Pots 夜
    poj Finicky Grazers 3184 夜
    poj 3253 Fence Repair 夜
  • 原文地址:https://www.cnblogs.com/lucky_hu/p/2473854.html
Copyright © 2011-2022 走看看