sql特殊字符怎么转义
来源:网络收集 点击: 时间:2024-03-10创建一个临时表,用于演示sqlserver语法中的特殊字符转义
IF OBJECT_ID(tempdb..#tblSpecial) IS NOT NULL DROP TABLE #tblSpecial;
CREATE TABLE #tblSpecial(
Col1 varchar(50),
Col2 varchar(200)
);

往临时表中插入一行测试数据,其中Col2列中含有一个特殊字符:百分号。从执行结果来看,在插入的时候百分号不需要转义
insert into #tblSpecial(Col1, Col2) values(Code1, 第%列);

往临时表中插入一行测试数据,其中Col2列中含有一个特殊字符:单引号。刚写完单引号,就可以看到sql语句其实算报错了,因为在sql中的字符串就是使用单引号包起来的
insert into #tblSpecial(Col1, Col2) values(Code10, 第列);

那么,如果非要往临时表中,插入一个单引号,该如何转义呢。其实,使用两个单引号,就能表示一个字符的单引号了
insert into #tblSpecial(Col1, Col2) values(Code10, 第列);

往临时表中插入一行测试数据,其中Col2列中含有一个特殊字符:下划线。从执行结果来看,在插入的时候下划线不需要转义
insert into #tblSpecial(Col1, Col2) values(Code100, 第_列);

如果要查询临时表中Col2列含有百分号的结果,该怎么查询呢?因为,模糊查询需要两个百分号,那么,要查找的百分号使用中括号包起来即可
select * from #tblSpecial where Col2 like %%

如果要查询临时表中Col2列含有下划线、单引号的结果,该怎么查询呢?由于在sqlserver中,下划线也是通配符,表示任何一个字符,所以,同样需要使用中括号包起来。至于单引号,仍然是两个连起来的单引号,表示一个单引号即可
select * from #tblSpecial where Col2 like %% or Col2 like %%

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_312434.html