求一段ASP查询数据库的代码

求一段ASP查询数据库的代码,第1张

<%

dim conn '数据库连接

dim connstr '连接字符串

dim db '数据库文件路径

db = "dbmdb" '数据库文件路径

connstr = "Provider = MicrosoftJetOLEDB40;Data Source = " & ServerMapPath(db) '数据库连接字符串

Set conn = ServerCreateObject("ADODBConnection") '创建一个数据库连接池

If Err Then '如果数据库连接出错则给出错误提示

ErrClear

Set Conn = Nothing

ResponseWrite "数据库连接出错,请打开connasp文件检查连接字串。"

ResponseEnd

End If

connOpen connstr '打开数据库连接

Dim Keyword,Rs '定义用到的变量

Keyword=Trim(Request("Keyword"))

%>

<form id="form1" name="form1" method="post" action="">

货品名称

<input type="text" name="Keyword" />

<input type="submit" name="Submit" value="查询" />

</form>

<%

If Keyword<>"" Then

Set Rs=connExecute("Select From [ca] Where 货品名称 Like '%"&Keyword&"%'") '在数据库查询输入的用户

If Not RsEof Then '如果用户存在,则输出该用户信息

%>

<table width="50%" border="1">

<tr>

<td colspan="2">货品编码:<%=Rs("货品编码")%></td>

</tr>

<tr>

<td width="58%">货品名称:<%=Rs("货品名称")%></td>

<td width="42%">单位:<%=Rs("单位")%></td>

</tr>

<tr>

<td>库存量:<%=Rs("库存量")%></td>

<td>参考销售价:<%=Rs("参考销售价")%></td>

</tr>

</table>

<%

End If

End If

%>

首先不推荐使用SELECT ,最好是你要使用哪些字段,就列出那些字段

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 所属部门=[选中的部门] AND 设备类型 = [选中的类型]

我想你SQL语句应该会写,这个地方难点在于,你检索的条件,不一定同时出现,有可能只出现一个,

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 所属部门=[选中的部门]

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 设备类型 = [选中的类型]

还有最初的一条

这三条检索词句都可能出现这个也是开发时常遇到的动态SQL问题

在程序中,执行SQL语句的是API提供的方法,一般只要传一个字符串即可,

那我们就可以在字符串上做手脚

首先创建一个条件为真的SQL语句

String strSQL = "SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名 WHERE 1=1 "

这条SQL执行的结果,与不加WHERE的结果是相同的,

这样做了以后,条再有变化就可以添加字符串" AND 字段=表达式 "

这样的字符串,以达到运态SQL所要求的效果

以你的问题举例

if 部门选择了

strSQL += "AND 所属部门=选中的部门 ";

if 部门选择了

strSQL += "AND 设备类型 = 选中的类型 ";

这样,根据选择的不同可以得到三种SQL

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 1=1 AND 所属部门=[选中的部门]

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 1=1 AND 设备类型 = [选中的类型]

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 1=1 AND 所属部门=[选中的部门] AND 设备类型 = [选中的类型]

这样应该可以达到你想要的结果了

这个要注意的是,在你写的字符串后,都要加一个空格,

要不然拼出来的结果就是

SELECT 备编号,设备名称,设备类型,使用年限,所属部门 FROM 表名

WHERE 1=1AND 所属部门=[选中的部门]AND 设备类型 = [选中的类型]

AND与前面的表达式挨在一起了,这样,这就不是一个合法的SQL语句,这点要注意

这也是在实际中常遇到的问题

就是那个页面是可以反复查询的,代码怎么编

对于这个问题很迷惑,你做完查询以后,不是回到这个页吗这个问题实再不知道你想问什么

表单提交后下拉列表的值又变成了原来的值,

这个是正常的,因为页面刷新后,页面上的控件如时不控制的话,都会变成初始状态

这个需要手动控制,

<select name="sel">

<option value="0"> </option>

<option value="1">>部门1</option>

<option value="2">>部门2</option>

<option value="3">>部门3</option>

</select>

假如说你提交的是部门3,你得到了3这个值,那么在回到页面时,你要在option中加上selected这个标记,即

<select name="sel">

<option value="0"> </option>

<option value="1">>部门1</option>

<option value="2">>部门2</option>

<option value="3" selected>>部门3</option>

</select>

一船的做法是,记住提交的值

<select name="sel">

<option value="0"> </option>

<option value="1" <% if(value==1){outprintln("selected");}%>>>部门1</option>

<option value="2" <% if(value==2){outprintln("selected");}%>>>部门2</option>

<option value="3" <% if(value==3){outprintln("selected");}%> >>部门3</option>

</select>

以上是JSP代码,你可以参考一下,

这样页面刷新后,就可以保持住你选择的那个选项的状态了

<!--#include file="connasp"-->

<%

dim ip

ip=RequestServerVariables("REMOTE_ADDR")

set rs=serverCreateObject("adodbrecordset")

rsopen"select from ad where ip='"&ip&"'",conn,1,3

if not rseof then

rs("c")=rs("c")+1

rsupdate

else

rsaddnew

rs("ip")=ip

rs("c")=1

rsupdate

end if

%>

'给分吧

<%

dim conn,db

dim connstr

db="dbmdb" ' access数据库文件路径

connstr="Provider=MicrosoftJetOLEDB40;Data Source="&serverMapPath(""&db&"")&";Persist Security Info=False;"

set conn=servercreateobject("ADODBCONNECTION")

'连接数据库

connopen connstr 'open datebase

'数据库结构

'文件名dbmdb

'表名admin

'字段id,自动编号

'字段username,文本

'字段userpass,文本

' 增

    set Rs=servercreateobject("adodbrecordset")

    Sql="select  from admin"

    Rsopen Sql,conn,1,3

    Rsaddnew

    Rs("username")="用户名"

    Rs("userpass")="用户密码"

    Rsupdate

    Rsclose

    set Rs=nothing

    responseWrite "<script language='javascript'>alert('管理员增加成功!');'</script>"

' 删

    s_id=1 '假设有个用户数据的id为1

    Sql="delete  from admin where id="&s_id&""

    set Rs=serverCreateObject("ADODBrecordset")

    rsopen Sql,conn,1,3

    responseWrite("<script>alert('帐号删除成功!');</script>")

    rsclose

    set Rs=nothing

' 改

    s_id=1 '假设有个用户数据的id为1

    set Rs=servercreateobject("adodbrecordset")

    Sql="select  from admin where id="&s_id&""

    Rsopen Sql,conn,1,3

    if Rseof and Rsbof then

        Rsclose

        set Rs=nothing

        responseWrite("<script language='javascript'>alert('此用户不存在!');historyback();</script>")

    else

        Rs("Password")="新密码"

        Rsupdate

        Rsclose

        set Rs=nothing

        responseWrite ("<script language='javascript'>alert('密码修改成功!');</script>")

    End If

' 查单个

    s_username="admin" '假设有个用户名为admin的用户数据

    set Rs=servercreateobject("adodbrecordset")

    Sql="select  from admin where username='"&s_username&"'"

    Rsopen Sql,conn,1,3

    if Rseof and Rsbof then

        Rsclose

        set Rs=nothing

        responseWrite("<script language='javascript'>alert('此用户不存在!');historyback();</script>")

    else

        s_name=Rs("username")

        s_pass=Rs("userpass")

        Rsclose

        set Rs=nothing

        ' 输出查询到的信息

        responseWrite ("<script language='javascript'>alert('你查询的用户名"&s_name&"的密码为:"&s_pass&"');</script>")

    End If

' 查列表

    set Rs=serverCreateObject("Adodbrecordset")

    sql="select  from admin order by id desc"

    Rsopen sql,conn,1,1

    if not Rseof then

        ' 循环输出查询到的信息

        do while not Rseof 

            responseWrite "id:"&Rs("id")&",用户名:"&Rs("username")&",密码:"&Rs("userpass")&"<br />"

        Rsmovenext

        loop

    end if

    Rsclose

    set Rs=nothing

' 使用完数据库后要关闭连接资源

    connclose

    set conn=nothing

%>

<%

set rs=servercreateobject("adodbrecordset")

sql="select from zhiban where date = '"&request("date")&"'order by id desc"

rsOpen sql,conn,1,1

%>

以上的意思就是说,在输入日期框中,给日期输入框定义为名称date,那request("date")的值。在date字段的值等于输入的值的时候按照id的顺序执行。以下为输出:

<% if not rseof and not rsbof then %>

<%=rs("date")%> <%=rs("name1 ")%> <%=rs("name12")%>

<% end if %>

意思是输入日期 人名1 人名2

<%

set rs=servercreateobject("adodbrecordset")

sql="select from zhiban where name1 = '"&request("name1 ")&"' or name2 = '"&request("name2 ")&"' order by id desc"

rsOpen sql,conn,1,1

%>

意思和上面的差不多。不用多说了,有什么不懂的加,32898679

首先链接数据库:

class DBHelper

{

public static SqlConnection connection = new SqlConnection("DataSource=\\db2005;Initial Catalog=mealo;Integrated Security=True");

}

然后编写增、删、改、查等语句对数据库的数据进行 *** 作、查询。

如查询桌台全部信息:

public DataTable SelectAll()

{

string sql = "select from TBll";

SqlDataAdapter thisAdapter = new SqlDataAdapter(sql, DBHelperconnection);

//DBHelperconnectionOpen();

DataSet TableDataSet = new DataSet();

thisAdapterFill(TableDataSet, "桌台表");

DataTable Table = TableDataSetTables["桌台表"];

return Table;

}

这个是你的问题:《""我想在查询页面中输入任意一个字段值怎么在查询结果页面中显示符合要求的一项数据""

》————其实很简单

只要写一个SQL语句就可以解决了

如:string sql = "select from 表名 where 条件 like %任意字% ";

非常之简单, 写了这么多希望采纳啊~!! 有不懂的还可以问我

刚好有个相似的,改动改动发给你!

searchasp:

<html>

<head>

<title></title>

</head>

<body bgcolor="#ffffff" topmargin="0" leftmargin="0">

<div align=center>

<table width="600" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#000000">

<tr>

<td bgcolor="#ffffff">

<table width="600" border="0" align="center" cellpadding="0" cellspacing="0" height="1">

<tr>

<td colspan="2" align="middle" height="62">

<table width="580" border="0" cellpadding="5" cellspacing="0" class="text">

<tr>

<td class="text" width="145">

</td>

</tr>

</table></td>

</tr>

<tr>

<td colspan="2" align="middle" height="1">

<div align=center>

<table width="80%" border="0" cellpadding="3" cellspacing="1" bgcolor="#666666">

<tr>

<td bgcolor="#e3edff" align="middle" class="text">

<!-- 查询 -->

<form action="showasp" method="post" target="_blank" id="form1" name="form1">

<table border="1" cellpadding="0" cellspacing="0" width="90%" class="text" bordercolor="#8fbee8">

<tr>

<td width="12%"> 姓名</td>

<td width="88%"><input name="bookname" size="30" maxlength="100" ><input name="booktype" type="radio" value="1">精确<input name="booktype" type="radio" value="2" checked>模糊</td>

</tr>

<tr>

<td width="12%">身份z</td>

<td width="88%"><input name="publisher" size="30" maxlength="50"

><input name="pubtype" type="radio" value="1">精确<input name="pubtype" type="radio" value="2" checked>模糊</td>

</tr>

<tr>

<td width="12%"> 日期</td>

<td width="88%"><input name="author" size="30" maxlength="100" ><input name="auttype" type="radio" value="1">精确<input name="auttype" type="radio" value="2" checked>模糊 </td>

</tr>

<tr>

<td width="12%"> 工资</td>

<td width="88%"><input name="money" size="30" maxlength="100" ><input name="moneytype" type="radio" value="1">精确<input name="moneytype" type="radio" value="2" checked>模糊 </td>

</tr>

<tr>

<td width="100%" colspan="2">

<p align="center"><a href="showasp">查找</a></p>

</td>

</tr>

</table>

</form></td></tr></table></div><br></td></tr></table></td></tr></table></div>

</body>

</html>

————————————————————

showasp:

<% @language=VBScript %>

<!--#include file="adovbsinc" -->

<%

dim bname,btype,pname,ptype,aname,atype,mname,mtype,continue,currentpage,rowcount,i

continue=0

currentpage=Trim(Request("gopage"))

If currentpage="" then currentpage=1

bname=Trim(Request("bookname"))

btype=Trim(Request("booktype"))

pname=Trim(Request("publisher"))

ptype=Trim(Request("pubtype"))

aname=Trim(Request("author"))

atype=Trim(Request("auttype"))

mname=Trim(Request("money"))

mtype=Trim(Request("moneytype"))

IF bname="" and pname="" and aname="" and mname="" then ResponseRedirect "请填入信息!"

mySQL="select from aa where "

IF bname<>"" then

IF btype=1 then

mySQL=mySQL & "姓名='" & bname & "'"

continue=1

else

mySQL=mySQL & "姓名 like '%" & bname & "%'"

continue=1

End IF

End IF

IF pname<>"" then

IF continue=1 then mySQL=mySQL & "and "

IF ptype=1 then

mySQL=mySQL & "身份z号='" & pname & "'"

continue=1

else

mySQL=mySQL & "身份z号 like '%" & pname & "%'"

continue=1

End IF

End IF

IF aname<>"" then

IF continue=1 then mySQL=mySQL & "and "

IF atype=1 then

mySQL=mySQL & "参加工作日期='" & aname & "'"

else

mySQL=mySQL & "参加工作日期 like '%" & aname & "%'"

End IF

End IF

IF mname<>"" then

IF continue=1 then mySQL=mySQL & "and "

IF mtype=1 then

mySQL=mySQL & "基本工资='" & mname & "'"

else

mySQL=mySQL & "基本工资 like '%" & mname & "%'"

End IF

End IF

%>

<html>

<head>

<title></title>

<style>

</style>

</head>

<body>

<table border="0" width="778" cellspacing="0" style="color:white;font-size:13px">

<tr height="100" valign="middle"><td align="center"><img border="0" src="images/titlegif" WIDTH="370" HEIGHT="90"></td></tr>

<tr height="280" valign="top"><td width="100%">

<table border="1" width="100%" cellspacing="0" style="color:black;font-size:12px;border-style:solid">

<tr align="center">

<td width="10%"><big>姓名</big></td>

<td width="30%"><big>身份z号</big></td>

<td width="20%"><big>参加工作日期</big></td>

<td width="10%"><big>基本工资</big></td>

</tr>

<%

Set Con=ServerCreateObject("ADODBConnection")

conOpen "DSN=xhnewmdb;DBQ=D:\\xhnewmdb;DriverId=25;FIL=MSAccess;MaxBufferSize=2048;"

set RS=ServerCreateObject("ADODBRecordSet")

RSOpen mySQL,Con,adOpenStatic

RSPageSize=15

IF not RSEOF then RSAbsolutePage=cInt(currentpage)

rowcount=0

While not RSEOF and rowcount<RSPageSize

year1=Year(RS("参加工作日期"))

month1=Month(RS("参加工作日期"))

day1=Day(RS("参加工作日期"))

%>

<tr>

<td width="10%"><%=(RS("姓名"))%></td>

<td width="30%"><%=(RS("身份z号"))%></td>

<td width="20%" align="center"><%=(year1 & "年" & month1 & "月" & day1 & "日")%></td>

<td width="10%" align="center"><%=(RS("基本工资"))%></td>

</tr>

<%

rowcount=rowcount+1

RSMoveNext

Wend

For i=rowcount+1 to RSPageSize

%>

<tr>

<td width="10%"> </td>

<td width="30%"> </td>

<td width="20%"> </td>

<td width="10%"> </td>

</tr>

<%

Next

%>

</table>

</td></tr>

<tr><td height="25" align="right" valign="middle">

<font color="black">第</font><font color="teal">

<%

Responsewrite(currentpage)

%>

</font><font color="black">页/</font>

<font color="black">共</font><font color="teal">

<%

IF RSPageCount>0 then

Responsewrite(RSPageCount)

else

Responsewrite("1")

End IF

%>

</font><font color="black">页</font>

    

<%

dim prepage,nextpage

prepage=cInt(currentpage)-1

nextpage=cInt(currentpage)+1

IF cInt(currentpage)>1 then

Responsewrite("<a href=showaspbookname=" & bname & "&booktype=" & btype & "&publisher=" & pname & "&pubtype=" & ptype & "&author=" & aname & "&auttype=" & atype & "&money=" & mname & "&moneytype=" & mtype & "&gopage=" & prepage & ">上一页</a>" )

else

Responsewrite("<font color=#666666>上一页</font>")

End IF

%>

    

<%

IF cInt(currentpage)<RSPageCount then

Responsewrite("<a href=showaspbookname=" & bname & "&booktype=" & btype & "&publisher=" & pname & "&pubtype=" & ptype & "&author=" & aname & "&auttype=" & atype & "&money=" & mname & "&moneytype=" & mtype & "&gopage=" & nextpage & ">下一页</a>" )

else

Responsewrite("<font color=#666666>下一页</font>")

End IF

ConClose

set RS=NOTHING

%>

<p align="center"><a href="javascript:windowclose()">关闭窗口</a></p>

</td></tr>

</table>

</body>

</html>

没人喜欢做问答题,谁都喜欢做选择题!要自己勤动手!

以上就是关于求一段ASP查询数据库的代码全部的内容,包括:求一段ASP查询数据库的代码、求助~~ASP实现数据库查询、asp读取数据库代码等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9353193.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存