access查询同一个表中多个字段内容

同一个表中多个文本字段,a1、a2、a3怎样实现同一个字段域中输入a1、a2、a3中的任何一个当中的内容都能查询到。请大侠们给出详细的代码。高分求助<inputname=... 同一个表中多个文本字段,a1、a2、a3
怎样实现同一个字段域中输入a1、a2、a3中的任何一个当中的内容都能查询到。请大侠们给出详细的代码。高分求助
<input name='a1' type='text' size='13' maxlength='50'>前台的asp中我用的是这个 但是只能查询一个字段中的内容。
比如说,我添加了一条信息,字段a1内容是 中国 字段a2内容是 美国 字段a3内容是 韩国 那么我在asp中的字段域内输入“美”字应该这条信息就能搜索到。
大侠初学者不明白,能不能写的详细一点
展开
 我来答
偶出滩头嬉
2008-04-14 · TA获得超过384个赞
知道小有建树答主
回答量:147
采纳率:0%
帮助的人:184万
展开全部
^_^

有80分,好好回答一下. 哈哈~~

数据库名:test.mdb
表名:table1
字段名:a1,a2,a3

查询直接用
sql="select * from table1"
即可.

关键是如何处理从表单传递过来的数据.

假如从表单传递的查询关键字为"KeyWords":
<input type="text" name="KeyWords" size="20" value="">

那么在后台对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
%>
<html>
<head><title></title></head>
<body>
<div align="center">
<form method="POST" action="search.asp" name="searchform">
<table width="380" align="center" border="0">
<tr>
<td>输入查询关键字:</td>
<td><input type="text" name="KeyWords" size="20" value=""></td>
<td> <input type="submit" border="0" value="查 询" name="CX"></td>
</table>
</form>
<table border="1" width="560">
<tr><td><b>查询结果:</b></td></tr>
<%
total=0
sql="select * from table1"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
%>
<% if request("KeyWords")="" then %>
<tr><td>没有您要查询的内容。</td></tr>
<%
else
for i = 1 to rs.recordcount
if (InStr(rs("a1"),request("KeyWords"))<>0) or (InStr(rs("a2"),request("KeyWords"))<>0) or (InStr(rs("a3"),request("KeyWords"))<>0) then
total=total+1
%>
<tr><td><%=rs("a1")%>,<%=rs("a2")%>,<%=rs("a3")%></td></tr>
<%
end if
rs.movenext
next
end if
%>
<tr><td align="center">一共搜索到<%=total%>条记录!</td></tr>
<%
rs.close
set rs=nothing
%>
</table>
</div>
</body></html>

祝你成功!
SouTek
2008-04-15 · TA获得超过2187个赞
知道小有建树答主
回答量:613
采纳率:0%
帮助的人:788万
展开全部
sql = "select * from table1 where ((a1 like '%"&request("a1")&"%') or (a2 like '%"&request("a1")&"%') or (a3 like '%"&request("a1")&"%'))"

写查询语句为这样就可以了。

但值得注意的是查询语句中尽量少用or,很容易发生错误。:-)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
独风吹jU
2008-04-14 · TA获得超过945个赞
知道小有建树答主
回答量:324
采纳率:0%
帮助的人:293万
展开全部
表中字段跟 input 的name值无关!

表字段查询用sql语句啊
如:select a1,a2,a3 from table_Name
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式