最简洁的多重查询的解决方案

2016-01-29 17:34 8 1 收藏

最简洁的多重查询的解决方案,最简洁的多重查询的解决方案

【 tulaoshi.com - ASP 】

  多重查询的解决方案
关键词:ASP 多重查询

注:本文如需转摘或引用,请与本人联系:“中国印刷市场”网http://www.printmarket.com.cn 朱继山 tozjs@263.net,否则视为侵权。

              [前言]
    我们经常会遇到多重查询问题,而长长的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),我们可以想象,需要多少判断的一个接一个的语句!
 

来源:http://www.tulaoshi.com/n/20160129/1501976.html

延伸阅读
标签: 皮肤护理
问答 图钉提问: 检查所见:肝脏大小形态正常,包膜光滑,内管纹理走向正常,实质回声分布均匀,门脉主干内径小于12mm,肝内外胆管未见增宽. 胆囊切面大小形态正常,壁毛糙,增厚,约三毫米,于胆囊颈部见一强回声光团,大小约6.4乘3mm,后伴声影,并随体位改变而移动,余囊腔内透声好,内未见局限性异常回声.胆内总管内径大于5mm. 胰腺切面大小正常,胰...
url传递中文的解决方案 1.设置web.config文件。(我不喜欢设置成这样) <system.web ...... <globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" / ...... </system.web 2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。 进行传递 string Name = ...
标签: 女人 女性健康
女人最尴尬的9私处问题解决方案 现在的人们都追求健康,而大女人在追求健康的时候却忽略女人私处的健康保健。 女性最尴尬九个私处问题 1、阴道清洗有没有必要? 答:每天清洗外阴是有必要的,尤其是在月经期,用温开水适当清洗外阴,不让外界的病原体进入阴道,如非必要不要冲洗阴道,不需要用妇科洗液,维护女 性...
标签: Web开发
编写思路: 把本地文件在客户端通过base64编码以后发送目的地. 测试过程中,上传文件过大,导致超时不成功. 后来经过改善.把编码分段发送.测试20M成功 编写目的: 在传统的解决方案里面,一次一次选取上传可以.但是在碰到把数据库里文件路径读出来,并把这些文件上传到一个地方的时候就比较麻烦. 如果得到路径一个一个去找到用ftp当然也是可以的,...
标签: Web开发
一、使用iframe,通过document.write产生历史 代码如下: !DOCTYPE html html head meta charset="utf-8"/ title0/title /head body input type="button" value="加1" onclick="add()" / div id="info" style="border:red 1px solid;width:200px;padding:10px;margin:5px;"0/div /body /html script src="history-0.1.js"/script ...

经验教程

682

收藏

39
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部