当前位置:  数据库>sqlserver

sql 单引号使用应注意的问题

    来源: 互联网  发布时间:2014-08-29

    本文导语:  sql语句中,单引号中间的为字符串,比如在SQL中定义一个字符串并赋值的,值要用两个单引号括起来,如下面的例子: Declare @str Varchar(50) Select @str = 'welcome to www.' 问题总是随之而来,有时需要在SQL中的字符串插入单引号,此...

sql语句中,单引号中间的为字符串,比如在SQL中定义一个字符串并赋值的,值要用两个单引号括起来,如下面的例子:

Declare @str Varchar(50)
Select @str = 'welcome to www.'

问题总是随之而来,有时需要在SQL中的字符串插入单引号,此时要注意到,单引号还可以作为转义字符使用哦。
即两个连着的单引号在字符串中表示一个单引号,迷糊了有木有,不要怕,接着往下看。
例如,将I'm a student赋值给一个字符串变量可以这样来写:

Declare @str Varchar(50)
Select @str = 'I''m a student'

下面是一个字符串连接的例子。

Declare @strFieldName Varchar(255) Declare @strTableName Varchar(255) Declare @strFieldValue varchar(100) Select @strTableName = 'USERS' Select @strFieldName = 'UserName' Select @strFieldValue = 'jaffee' print @strFieldName print @strTableName print @strFieldValue declare @Str Varchar(300) select @Str = 'Select Count(['+@strFieldName+']) From ['+@strTableName+'] Where ['+@strFieldName+'] = '''+ @strFieldValue + '''' print @str

因为jafee是字符串类型,如果用

select @Str = 'Select Count(['+@strFieldName+']) From ['+@strTableName+'] Where ['+@strFieldName+'] = '+ @strFieldValue

执行后,会是这样的结果:

@str这个串的值是Select Count([UserName]) From [USERS] Where [UserName] = jaffee1900

修改为如下结构,才可以正常执行。

select @Str = 'Select Count(['+@strFieldName+']) From ['+@strTableName+'] Where ['+@strFieldName+'] = '''+ @strFieldValue + ''''

相当于如下的结构:

Select Count([UserName]) From [USERS] Where [UserName] = 'jaffee1900'

附:
sql查询含有单引号的字段:

select 字段列表 from 表名 where 字段名 like ’%’+char(39)+’%’

    
 
 

您可能感兴趣的文章:

  • sql语句单引号与双引号区别和应用
  • sql 单引号查询异常的解决方法
  • sql语法中什么类型的值需要用单引号‘’修饰?
  • sql语句中单引号嵌套问题(一定要避免直接嵌套)
  • sql 插入单引号、添加、删除字段的例子
  • 如何处理有"'"单引号的sql语句
  • sql语句中单引号,双引号的处理方法
  • sql绕过单引号限制继续注入的解决方法
  • sql 单引号,双引号的灵活应用指南
  • sql语句单引号 双引号的处理方法总结
  • MS-SQL Server 中单引号的两种处理方法
  • sql server中使用Unicode字符时要注意的问题
  • Oracle SQL使用时注意自己的输入
  • sql 约束性错误要注意的问题及其它
  • 欢迎讨论:JSP+SQL Server+Apache建立一个Web服务器有什么值得注意的问题?(之二)
  • SQL查询效率注意事项小结
  • 欢迎讨论:JSP+SQL Server+Apache建立一个Web服务器合适吗,有什么值得注意的问题?
  • SQL有外连接的时候注意过滤条件位置否则会导致网页慢
  • sql优化技巧大全 sql优化注意事项
  • php sql注入攻击与防范注意事项
  • 编写SQL需要注意的细节Checklist总结
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • mysql的SQL_NO_CACHE(在查询时不使用缓存)和sql_cache用法
  • C#使用带like的sql语句时防sql注入的方法
  • 在SQL Server中使用SQL语句查询一个存储过程被其它所有的存储过程引用的存储过程名
  • SQL Server SQL Agent服务使用教程小结
  • 在使用中,经常出现提示为:java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]连接占线导致另一个 hstmt,是什么意思,怎样解
  • SQL Server设置主键自增长列(使用sql语句实现)
  • sql server对索引的使用
  • 使用php语句将数据库*.sql文件导入数据库
  • SQL高级应用之使用SQL查询Excel表格数据的方法
  • sql server 使用ntile获取数据的例子
  • HTML标签参考手册 iis7站长之家
  • 如何使用SQL分页?
  • SQL Server 2008无日志文件如何使用MDF文件附加数据库
  • 大虾帮忙,怎样用JDBC-ODBC连接SQL2000并使用呀?
  • Oracle中SQL语句连接字符串的符号使用介绍
  • 关于java中执行sql语句使用order by的问题!
  • SQL SERVER使用REPLACE将某一列字段中的某个值替换为其他的值
  • MS SQL Server游标(CURSOR)的学习使用
  • sql 游标使用笔记
  • sql使用cast进行数据类型转换示例
  • oracle使用sql脚本生成csv文件案例学习
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3