请教,没时间去看书了.

zyqiiy 2004-08-10 08:50:54
没时间去看书了,急.
connstr="DBQ="+server.mappath("DB_PAY.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
sql="select * from pay2003 where YM = '"&ym&"' and NAME = '"&name&"'"
rs=conn.execute(sql)
请问现在的rs能否把表中的项都显示出来,比如
for i=1 to 10
response.write rs(i)
next
...全文
176 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
onkey1999 2004-08-11
  • 打赏
  • 举报
回复
set rs = server.createObject("ADODB.Recordset")
rs.open sq,conn,1,3
for i=1 to 10
response.write rs(i).value
next
zyqiiy 2004-08-11
  • 打赏
  • 举报
回复
谢谢各位,我知道了 .
kingwcx 2004-08-11
  • 打赏
  • 举报
回复
for i=0 to 10
rs=conn.execute("select * from teble where id=1")[i]
response.write rs
next

好像这样也可以!我记不清了试试看吧!
ayun00 2004-08-10
  • 打赏
  • 举报
回复
回复人: chengbo1983(我想学ASP.net!) ( ) 信誉:99 2004-08-10 21:42:00 得分: 0




那是不是这个?

for i=0 to rs.fields.count-1
Response.Write rs.fields(i).value
next


rs.fields(i).value可以简写成rs(i) 呵呵
alcoholwang 2004-08-10
  • 打赏
  • 举报
回复
set rs=conn.execute(sql)

要有SET
binghgo 2004-08-10
  • 打赏
  • 举报
回复
有很多方法都可以实现把数据读出来,我就不多写了.不过按照你的问法,还有个很少用到的方法可以解决,可以无须知道表里有多少个字段就将所有数据读出来:
<%
connstr="DBQ="+server.mappath("DB_PAY.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
sql="select * from pay2003 where YM = '"&ym&"' and NAME = '"&name&"'"
rs=conn.execute(sql)

dim fields_counter,i
fields_counter = rs.fields.count
do while not rs.eof
for i = 0 to fields_counter-1
Response.Write(rs.fields.item(i) & "   ")
next
Response.Write("<br>")
rs.movenext
loop
%>

这个应该是对的吧
alcoholwang 2004-08-10
  • 打赏
  • 举报
回复
去试验下不就知道了~~~~~~~~~~~


实践出真知~~~~~~
chengbo1983 2004-08-10
  • 打赏
  • 举报
回复


那是不是这个?

for i=0 to rs.fields.count-1
Response.Write rs.fields(i).value
next
alcoholwang 2004-08-10
  • 打赏
  • 举报
回复
flash0008(虫子) 的方法正确


rs.fields.count就是该记录有多少字段
flash0008 2004-08-10
  • 打赏
  • 举报
回复
楼上的,你帖出的代码是把字段名逐个读出来.
chengbo1983 2004-08-10
  • 打赏
  • 举报
回复
是不是这个意思啊?

for i=0 to rs.fields.count-1
Response.Write rs.fields(i).name
next
flash0008 2004-08-10
  • 打赏
  • 举报
回复
对了,rs=conn.execute(sql)应该改为set rs=conn.execute(sql),拷你的代码时忘了改.
flash0008 2004-08-10
  • 打赏
  • 举报
回复
有很多方法都可以实现把数据读出来,我就不多写了.不过按照你的问法,还有个很少用到的方法可以解决,可以无须知道表里有多少个字段就将所有数据读出来:
<%
connstr="DBQ="+server.mappath("DB_PAY.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
sql="select * from pay2003 where YM = '"&ym&"' and NAME = '"&name&"'"
rs=conn.execute(sql)

dim fields_counter,i
fields_counter = rs.fields.count
do while not rs.eof
for i = 0 to fields_counter-1
Response.Write(rs.fields.item(i) & "   ")
next
Response.Write("<br>")
rs.movenext
loop
%>
alcoholwang 2004-08-10
  • 打赏
  • 举报
回复
dim conn,connstr,db
db="DB_PAY.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)
conn.Open connstr
sql="select * from pay2003 where YM = '"&ym&"' and NAME = '"&name&"'"
Set rs=conn.execute(sql)

while not rs.eof()
'这里的XX,你必须知道有多少字段数量才能确定,而且I应该从0开始
for i=0 to XX
response.write rs(i)
next
rs.movenext
wend

rs.close
set rs=nothing
conn.close
set conn=nothing
alcoholwang 2004-08-10
  • 打赏
  • 举报
回复
connstr="DBQ="+server.mappath("DB_PAY.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
sql="select * from pay2003 where YM = '"&ym&"' and NAME = '"&name&"'"
set rs=conn.execute(sql)

do while not rs.eof
response.write rs("i")
rs.movenext
loop


似乎你这样也是错误的。。。。。。。。我了解楼主的意思是,显示第一条记录的每个字段
这个是显示从头到尾的记录

而且response.write rs("i")也不一定正确,你怎么知道字段里面有i
alcoholwang 2004-08-10
  • 打赏
  • 举报
回复
sunjiujiu(向第五个窝头努力)
这样是错误的吧????




for i=1 to 10
response.write rs(i)
next

这个1-10,是要看你的*里有多少个字段的,说不定少于10个,那就出错,如果多余10个,就显示不完全
zhouyouok 2004-08-10
  • 打赏
  • 举报
回复
对,sql语句可以执行,但是要使用rs必须得加
set rs = server.createObject("ADODB.Recordset")
colinliu 2004-08-10
  • 打赏
  • 举报
回复
connstr="DBQ="+server.mappath("DB_PAY.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr
sql="select * from pay2003 where YM = '"&ym&"' and NAME = '"&name&"'"
set rs=conn.execute(sql)

do while not rs.eof
response.write rs("i")
rs.movenext
loop
顺子 2004-08-10
  • 打赏
  • 举报
回复
rs=conn.execute(sql)
只要在前面加上set就好了
我經常是這樣的
sunjiujiu 2004-08-10
  • 打赏
  • 举报
回复
rs=conn.execute(sql)之前最好加一句:
set rs = server.createObject("ADODB.Recordset")


是能将表中的所有的项都显示出来的

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧