文章·资料 电脑软件 手机软件 网站源码




    本 站 搜 索
   推 荐 文 章        More...
华硕易电脑(ASUS Eee PC 10..
先来段开场白:为了外出携带方便..
Acronis True Image 使用..
  一款可以在Windows下使用..
Norton Ghost 使用详解
一、分区备份   使用Ghost..
    文 章 阅 读 排 行
“啊估文章软件站”网站系..
一、调试测试网站系统时,如何..
关于 Firefox 在中国持续..
亲爱的 Firefox 用户及 Firefox..
向日葵远程控制软件,设置..
向日葵远程控制软件有个人版和..
夸克网盘新用户注册如何获..
夸克网盘,新用户注册如何获得1..
FileZilla Server 设置参考
FileZilla Server 启动界面 ..
PakePlus 构建 APP 需要 Gi..
PakePlus 是一个基于 Rust Taur..
电脑显示器使用 HDMI 数据..
如果电脑显示器使用 HDMI 数据..
ASP/JavaScript:不刷新页..
function GuReturnElement(..
分享几个免费申请 SSL 证..
DigiCert 原 Symantec(赛门铁..
关闭微信的个性化推荐广告
有网友说到,微信的初衷是拉近..
 文 章 信 息
最简洁的多重查询的解决方案
评论()〗〖留言〗〖收藏
〖文章分类:电脑·手机·网络 / 网站设计·开发·优化〗〖阅读选项
我们经常会遇到多重查询问题,而长长的SQL语句往往让人丈二和尚摸不着头脑。特别是客户端部分填入查询条件时,如用普通方法将更是难上加难。 
  以下巧妙地利用"where 1=1"的恒等式(事实上很多,让它值为TRUE即可)解决此问题。 
   
  [正文概要] 
   
  ’subject 信息标题 
  ’company 发布信息的公司名称 
  ’content 发布信息的内容 
  ’address 公司地址 
  ’infomation 公司简介 
  ’note 相关说明 
  以上值均由FORM提交,然后通过:subject=trim(Request.Form("subject"))等得到相应的值。 
   
  <% 
  ’这个函数很关键!--------------------------- 
  Function sql(a,b,sqls) 
  if b<>"" then ’如果客户端没有提交此值,则不会产生相应的SQL语句。 
  sqls=sqls & " and " & a & " like ’%" & b & "%’" 
  end if 
  sql=sqls 
  End Function 
  ’-----------------调用数据库 
  Set conn=Server.CreateObject("ADODB.Connection") 
  DBpath=Server.MapPath("/database/mydb.mdb") 
  Conn.Open "driver={Microsoft Access Driver (*.mdb)};pwd=;dbq=" & DBpath 
  Set rs=Server.CreateObject("ADODB.Recordset") 
  sqls="select * from mytable where 1=1 " 
  ’以下调用上面的函数即可,可以很多个调用(理论上是任意) 
  sqls=sql("subject",subject,sqls) 
  sqls=sql("company",company,sqls) 
  sqls=sql("content",content,sqls) 
  sqls=sql("address",address,sqls) 
  sqls=sql("infomation",infomation,sqls) 
  sqls=sql("note",note,sqls) 
  sqls=sqls & " order by id desc" 
  rs.open sqls,conn,3,2 
  %> 
   
  [结束语] 
  如果没有关键的函数Function sql(a,b,sqls),我们可以想象,需要多少判断的一个接一个的语句!

文章作者:未知  更新日期:2006-05-13
〖文章浏览:〗〖发送文章〗〖打印文章
〖文章阅读说明〗
·本站大部分文章转载于网络,如有侵权请留言告知,本站即做删除处理。
·本站法律法规类文章转载自[中国政府网(www.org.cn)],相关法律法规如有修订,请浏览[中国政府网]网站。
·本站转载的文章,不为其有效性,实效性,安全性,可用性等做保证。
·如果有什么问题,或者意见建议,请联系[网站管理员]。