您的位置:首页 > 数据库 > SQL语言

SQL语句中单引号

更多 2015/2/3 来源:SQL学习浏览量:1330
学习标签: SQL语句
本文导读:在执行sql语句的时候,如果where条件中含有单引号,该如何处理呢?SQL Server中,默认情况下, '是字符串的边界符, 如果在字符串中包含', 则必须使用两个', 第1个'就是转义符。

一、写SQL语句时,条件中会有两个单引号,但是本身又被单引号包括

例如:

select * from control where column=' '  如果column中的条件为 ddd 'g'

 

解决方法为

在column的条件中用两个单引号来表示一个单引号,例如

select * from control where column=' ddd ''g''' 

 

二、存储过程中使用单引号的实例

 
 
 
SQL 代码   复制

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 tableddd As p ,tableeee As m ,tablefff c WHERE p.EmpID = m.EmpID and p.CateID = c.CateID  and '
 
 + @SearchString

 

 

收藏
498
很赞
455
您可能感兴趣