当前位置: 首页 > news >正文

糕点网站策划书wordpress 博客群

糕点网站策划书,wordpress 博客群,南昌企业网站建设,wordpress 开源地图插件来源#xff1a;http://www.cnblogs.com/amylis_chen/archive/2010/07/16/1778921.html 通配符 描述 示例 % 包含零个或更多字符的任意字符串。 WHERE title LIKE %computer% 将查找处于书名任意位置的包含单词 computer 的所有书名。 _#xff08;下划线#xff09; 任何…来源http://www.cnblogs.com/amylis_chen/archive/2010/07/16/1778921.html 通配符 描述 示例 % 包含零个或更多字符的任意字符串。 WHERE title LIKE %computer% 将查找处于书名任意位置的包含单词 computer 的所有书名。 _下划线 任何单个字符。 WHERE au_fname LIKE _ean 将查找以 ean 结尾的所有 4 个字母的名字Dean、Sean 等。  [ ] 指定范围 ([a-f]) 或集合 ([abcdef]) 中的任何单个字符。 WHERE au_lname LIKE [C-P]arsen 将查找以arsen 结尾且以介于 C 与 P 之间的任何单个字符开始的作者姓氏例如Carsen、Larsen、Karsen 等。 [^] 不属于指定范围 ([a-f]) 或集合 ([abcdef]) 的任何单个字符。 WHERE au_lname LIKE de[^l]% 将查找以 de 开始且其后的字母不为 l 的所有作者的姓氏。 将通配符作为文字使用用中括号包围不适用postgreSQL 可以将通配符模式匹配字符串用作文字字符串方法是将通配符放在括号中。下表显示了使用 LIKE 关键字和 [ ] 通配符的示例。 符号                                  含义 LIKE 5[%]                      5% LIKE [_]n                        _n LIKE [a-cdf]                   a、b、c、d 或 f LIKE [-acdf]                   -、a、c、d 或 f LIKE [ [ ]                         [ LIKE ]                             ] LIKE abc[_]d%             abc_d 和 abc_de LIKE abc[def]               abcd、abce 和 abcf  SQL模糊查询使用like比较字加上SQL里的通配符请参考以下 1、LIKEMc% 将搜索以字母 Mc 开头的所有字符串如 McBadden。 2、LIKE%inger 将搜索以字母 inger 结尾的所有字符串如 Ringer、Stringer。 3、LIKE%en% 将搜索在任何位置包含字母 en 的所有字符串如 Bennet、Green、McBadden。 4、LIKE_heryl 将搜索以字母 heryl 结尾的所有六个字母的名称如 Cheryl、Sheryl。 5、LIKE[CK]ars[eo]n 将搜索下列字符串Carsen、Karsen、Carson 和 Karson如 Carson。 6、LIKE[M-Z]inger 将搜索以字符串 inger 结尾、以从 M 到 Z 的任何单个字母开头的所有名称如 Ringer。 7、LIKEM[^c]% 将搜索以字母 M 开头并且第二个字母不是 c 的所有名称如MacFeather。 Escape 转义字符 ( SQL Server 支持 like \%% escape \  和 like /%%  escape / 两种斜杠 ) ( PostgreSQL 只支持 like /%%  escape / ) 用户输入如果没有任何限制的话则必须对特殊字符进行变换。 如果对单引号不进行变换则会发生数据库错误甚至可能导致系统崩溃。 不过回避方法却非常简单只要将单引号[]转换成两个单引号[]就可以了。 例SELECT * FROM TBL WHERE COL ABCDEF; 模糊查询的语句虽然不会发生SQL错误但是不进行回避的话则无法得到要检索的值。 回避方法较单引号复杂。需要使用转义符。将[%]转为[\%]、[_]转为[\_] 然后再加上[ESCAPE \]就可以了。 例SELECT * FROM TBL WHERE COL LIKE ABC\%\_% ESCAPE \;   ※最后一个%是通配符。 如果做日文项目的话会出现全角字符的[]、[] 而这两个全角字符同样会作为半角通配符处理。 所以在变换时同时需要将全角的[]、[]进行变换。 例SELECT * FROM TBL WHERE COL LIKE ABC\%\_\\% ESCAPE \; 变换成这样似乎结束了可是不要忘了还有转义符自身万一用户输入转义符的话 以上的处理就会发生SQL错误。所以也必须对转义符进行变换。变换方法就是将[\]转换为[\\]。 例SELECT * FROM TBL WHERE COL LIKE ABC\%\_\\\\% ESCAPE \; 以上的操作都针对于一般的数据类型如CHAR、VARCHAR2。 如果出现NCHAR、NVARCHAR2的话以上的处理就会出现ORA-01425错误。 如果改成以下写法则会发生ORA-01424错误。 SELECT * FROM TBL WHERE COL LIKE %\% ESCAPE TO_NCHAR(\) 正确的写法应该是 SELECT * FROM TBL WHERE COL LIKEC %\% ESCAPE TO_NCHAR(\) 最后要说明的是每个like都应该写ESCAPE语句。 例 SELECT * FROM TBL WHERE COL1 LIKE %\% ESCAPE \ OR COL2 LIKE %\% ESCAPE \ SQL select * from test; TEST -------------------- sdd_kk dd dfsfsa dffa%asfs 12345 1%2345 1%54321 2%54321 %%54321 AB 已选择9行。 其中包含特殊的字符分别为%,_,有可能包含这些字符的数据含有错误或者需要查找包含这些字符的数据。 SQL select * from test where test like sdd _% escape ; TEST -------------------- sdd_kk 转义字符为 (空格); SQL select * from test where test like sdd\_% escape \; TEST -------------------- sdd_kk 转义字符为\; SQL select * from test where test like sdd_% escape ; TEST -------------------- sdd_kk 转义字符为; SQL select * from test where test like sdd/_% escape /; TEST -------------------- sdd_kk 转义字符为/; SQL select * from test where test like sddd_% escape d; 未选定行 转义字符为d没有实现转义功能 SQL select * from test where test like %\_% escape \; TEST -------------------- sdd_kk 查找包含所有_的字段。 同理通过这种方法查找含有%的所有字段 SQL select * from test where test like %\%% escape \; TEST -------------------- dffa%asfs 1%2345 1%54321 2%54321 %%54321 但是不能通过转义字符查找 SQL select * from test where test like %\% escape\; select * from test where test like %\% escape\ * 第 1 行出现错误: ORA-01424: 转义符之后字符缺失或非法 可以通过另外的方式进行转义 SQL select ascii() from dual; ASCII() ---------- 38 SQL select * from test where test like %||chr(38)||%; TEST -------------------- AB 的转义 SQL select * from test where test like %%; TEST -------------------- dd 特殊符号的数据的插入 SQL insert into test values(testtest); 输入 test 的值: test 原值 1: insert into test values(testtest) 新值 1: insert into test values(testtest) -虽然插入但是数据不对。 已创建 1 行。 SQL show define define (hex 26) SQL set define off SQL show define define OFF SQL insert into test values(testtest); 已创建 1 行。 SQL show escape escape OFF SQL set escape on SQL show escape escape \ (hex 5c) SQL insert into test values(test\test); 已创建 1 行。 SQL select * from test; TEST -------------------- sdd_kk dd dfsfsa dffa%asfs 12345 1%2345 1%54321 2%54321 %%54321 AB testtest TEST -------------------- testtest testtest 已选择13行。 SQL commit; 提交完成。 SQL select * from test; TEST -------------------- sdd_kk dd dfsfsa dffa%asfs 12345 1%2345 1%54321 2%54321 %%54321 AB testtest TEST -------------------- testtest testtest 已选择13行。 SQL insert into test values(test\%test); 已创建 1 行。 SQL insert into test values(test\_test); 已创建 1 行。 SQL insert into test values(test\test); insert into test values(testtest) * 第 1 行出现错误: ORA-00917: 缺失逗号 SQL insert into test values(testtest); 已创建 1 行。 SQL select * from test; TEST -------------------- sdd_kk dd dfsfsa dffa%asfs 12345 1%2345 1%54321 2%54321 %%54321 AB testtest TEST -------------------- testtest testtest test%test test_test testtest 已选择16行。 连接符‘||’导致了新一轮的转义连接符号‘||’左右的单引号没有任何的关系除非‘||’是作为字符串的一部分这在动态SQL中很常见。 SQL SELECT ORACLE|| FROM DUAL; ORACLE|| ---------- ORACLE 个人理解ORACLE|| 后面的“”应该认为是一个字符串即前后单引号中间是“”串而中间又是密集单引号因此第一个为转义功能 SQL SELECT ORACLE FROM DUAL; ORACLE ------------ ORACLE 对于第一个前两个单引号配对后面四个单引号按照上面的第一条原则分配既SELECT ORACLE|| FROM DUAL; 对于第二个由于第二个单引号后面存在单引号所以就不与第一个配对而是充当了转义的角色。既SELECT ORACLE FROM DUAL; 注本人引用了网友的资源如侵犯了您的版权请告知我会立即修改指明出处
http://www.zqtcl.cn/news/729184/

相关文章:

  • 莱芜住房和城乡建设厅网站网站头部设计
  • 织梦响应式茶叶网站模板邯郸最新通告今天
  • 深圳公司网站改版通知做网站分类链接
  • 电子商务网站建设答案网络运营与维护
  • 网站登陆怎么做网站app的区别
  • 获取网站缩略图工信部2017网站备案
  • 有哪些网站可以做ps挣钱自己制作游戏
  • 旅游网站开发团队四川住房和城乡建设网站
  • 网站框架设计商城网站制作需要多少费用
  • 网站建设哪个公司个人网站做哪种能赚钱
  • 福建建设人才与科技发展中心seo导航站
  • 修文县生态文明建设局网站郑州制作网站哪家好
  • 泉州网站优化排名东莞长安做网站公司
  • 网站制作公司 顺的有口碑的赣州网站建设
  • 成都网站设计制作苏州新闻
  • 黑色网站设计iis 网站 红
  • 专业做家居的网站佛山做网站永网
  • 医疗网站建设讯息企业门户网站建设思路
  • 四川建设安全监督管理局网站网站传送门怎么做
  • 哪家网站做推广好优化师和运营区别
  • 鹰潭网站建设公司南宁行业平台开发公司
  • 织梦如何仿手机网站源码奉贤区专业建网站
  • 上海网站建设接单wordpress htaccess 404
  • 长春网站优化指导网站怎样做301跳转
  • 做网站域名是什么意思临沧网站开发
  • 怎么在网站上做网页专业图库网站 西安
  • 龙南建设局网站wordpress 购物导航网站
  • 做数据分析好看的网站自己做背景的网站
  • 做纸棋的网站制作什么网站做毕业设计
  • 上海易雅达网站建设公司广元网站开发