^_^
有80分,好好回答一下. 哈哈~~
数据库名:test.mdb
表名:table1
字段名:a1,a2,a3
查询直接用
sql="select * from table1"
即可.
关键是如何处理从表单传递过来的数据.
假如从表单传递的查询关键字为"KeyWords":
那么在后台对KeyWords处理时,可以利用InStr()函数检查在rs("a1"),rs("a2")和rs("a3")中是否含有KeyWords,如果包含了要查询的KeyWords,则显示该条记录.即:
if (InStr(rs("a1"),request("KeyWords"))<>0) or (InStr(rs("a2"),request("KeyWords"))<>0) or (InStr(rs("a3"),request("KeyWords"))<>0) then 显示该记录的值
思路已经很清楚了.
楼主说要详细的代码,那么给出一个完整的asp程序,请楼主调试运行:
(数据库结构如上所述)
search.asp
<%
'连接数据库
set conn=server.createobject("adodb.connection")
provider="provider=microsoft.jet.oledb.4.0;"
DBPath ="data source=" & Server.MapPath("test.mdb")
conn.Open provider & DBPath
%>
查询结果: |
没有您要查询的内容。 |
<%=rs("a1")%>,<%=rs("a2")%>,<%=rs("a3")%> |
一共搜索到<%=total%>条记录! |
sql = "select * from table1 where ((a1 like '%"&request("a1")&"%') or (a2 like '%"&request("a1")&"%') or (a3 like '%"&request("a1")&"%'))"
写查询语句为这样就可以了。
但值得注意的是查询语句中尽量少用or,很容易发生错误。:-)
表中字段跟 input 的name值无关!
表字段查询用sql语句啊
如:select a1,a2,a3 from table_Name