用ASP实现Access数据库查询
济南联想神州数码有限公司 赵宇翔
本文着重介绍通过IIS4.0服务管理中ASP脚本语言实现访问Access数据库,至于如何创建系统DSN这里一带而过,有兴趣的读者自己可以去试一试。
首先,创建一个Access数据库,其中含有姓名、部门名称、部门费用的字段名。
其次,在安装IIS4.0的WWW服务器上,打开ODBC,创建系统DSN,数据源名ABC,选取对应的Access数据库,建立好后就可以开始写ASP程序了。
根据需要我们想对Access数据库中的部门名称按照不同的部门进行查询,按照费用金额的大小进行查询。
按照部门名称查询创建shujuku5.asp,ASP的程序源代码如下:
< html > < body > < % Set Connect=Server.CreateObject(“ADODB.Connection") Connect.Open “abc" s=Request(“menu1") sql=“select * from sheet1 where 部门名称=”&“‘"&s&“'" Set rs=Connect.Execute(sql) %> < table border=1 cellspacing=1 > < tr bgcolor=“#00ffff" > < %For i=0 TO 7% > < td size=1 > < b >< %=rs(i).Name% >< /b > < td >< %Next% > < tr > < %Do While Not rs.EOF% > < tr > < %For i=0 TO 7% > < td size=1 >< %=rs(i)% >< td > < %Next% > < /tr > < %rs.MoveNext Loop % > < % rs.Close Connect.Close % > < /table > < /body > < /html >
按照费用金额创建shujuku4.asp,ASP源代码程序如下:
< html >
< body >
< %
Set Connect=Server.CreateObject(“ADODB.Connection")
Connect.Open “ABC"
r=Request(“textfield")
s=Request(“menu2")
if s=“大于" then
sql=“select * from sheet1 where 费用金额 >"&r&“"
elseif s=“小于" then
sql=“select * from sheet1 where 费用金额< "&r&“"
elseif s=“等于" then
sql=“select * from sheet1 where 费用金额="&r&“"
elseif s=“大于等于" then
sql=“select * from sheet1 where 费用金额 >="&r&“"
elseif s=“小于等于" then
sql=“select * from sheet1 where 费用金额< ="&r&“"
end if
Set rs=Connect.Execute(sql)
% >
< table border=1 cellspacing=5 >
< tr bgcolor=“#00ffff" >
< %For i=0 TO 7% >
< td >< b >< font size=“2" >< %=rs(i).Name% >
< /font >< /b >
< td >< %Next% >
< tr >
< %Do While Not rs.EOF% >
< tr >
< %For i=0 TO 7% >
< td size=8 >< %=rs(i)% >< td >
< %Next% >
< /tr >
< %rs.MoveNext
Loop
% >
< %
rs.Close
Connect.Close
% >
< /table >
< /body >
< /html >
创建好这两个ASP文件拷贝到IIS4.0的虚拟目录 WWWROOT下,然后再用FRONTPAGE、DREAMWEAVER编写一个Html程序 bumenfeiyong.html,其源代码程序如下:
< html > < head > < title >Untitled Document< /title > < meta http-equiv=“Content- Type" content=“text/html; charset=gb2312" > < /head > < body bgcolor=“#FFFFFF" > < div align=“center" > < p >< b >< font color=“#CC3333" size=“5" > 部门费用查询< /font >< /b >< /p > < p >< img src=“trees.gif" width=“600" height=“17" > < /p > < table width=“100%" border=“1" cellspacing=“10" bordercolor=“#FFFFFF" > < tr bordercolor=“#FFCCCC" > < td height=“9" > < form method=“post" action= “http://192.1.168.100/shujuku5.asp" > < select name=“menu1" > < option selected >按部门查询< /option > < option >总经理室< /option > < option >财务部< /option > < option >市场部< /option > < option >物配部< /option > < option >销售部< /option > < option >办公室< /option > < /select > < input type=“submit" name=“Submit" value=“提交" > < /form > < /td > < /tr > < tr bordercolor=“#FFCCCC" > < td height=“15" > < form method=“post" action= “http://192.1.168.100/shujuku4.asp" > < select name=“menu2" > < option selected >费用金额< /option > < option >大于< /option > < option >大于等于< /option > < option >等于< /option > < option >小于等于< /option > < option >小于< /option > < /select > < input type=“text" name=“textfield" size=“12" > < input type=“submit" name=“Submit2" value=“提交" > < /form > < /td > < /tr > < tr bordercolor=“#FFCCCC" > < td >&nbsp;< /td > < /tr > < tr bordercolor=“#FFCCCC" > < td >&nbsp;< /td > < /tr > < tr bordercolor=“#FFCCCC" > < td >&nbsp;< /td > < /tr > < tr bordercolor=“#FFCCCC" > < td >&nbsp;< /td > < /tr > < tr bordercolor=“#FFCCCC" > < td >&nbsp;< /td > < /tr > < /table > < p >&nbsp;< /p > < /div > < /body > < /html >
通过以上程序的编写,再用IE5.0打开bumenfeiyong.htm 后,根据画面输入您想要得到的查询,每个部门得到不同的查询结果。在费用金额选取大于、小于、等于等选择条件,后面选取金额,就能得到大于、小于、等于某一数值的查询结果。读者还可以根据自己的需要添加更多的字段,完成不同字段的查询,其ASP源代码与以上程序大同小异。