ASP读数据库:有三个数据表,我要把他们读到一个页面中显示出来,

ASP读数据库:有三个数据表,我要把他们读到一个页面中显示出来,,第1张

select table1.username,table1.name,table3.info,table3.bkhr,table2.sc from table1,table2,table3 where table1.username=table2.username and table3.page=table2.page and table3.bkhr='李四'

这是sql语句

<select size="1" name="bk">

<option value="李四">李四</option>

<option value="张三">张三</option>

</select>

<input type="submit" value="统计成绩" name="0>

上面的value要改成上面的

table3.bkhr='李四'

改为

table3.bkhr='"&bkhr&"'"

然后在页面的开始写

bkhr=request("bk")

首先得到库中的数据,放入一个List列表中。

遍历列表,把每一行值用STRING保存,然后用SPLIT(‘,’)切分,把字符存入一个字符数组中。

定义一个整形i,用来存数量,用IF判断是否有A在,有就让i+1.

最后i就是你要的了。

以上只是思路。代码也很好实现的。

第一次调用完

rs.close关闭第一个连接

然后在调用第二次,例如

dim conn,connstr

Set conn = Server.CreateObject("ADODB.Connection")

connstr="Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &Server.Mappath("db.mdb")

conn.Open connstr

set rs=server.createobject("adodb.recordset")

sql="select * from admin where chk=0 order by id asc"

rs.open sql,conn,1,3

……

rs.close

sql="select * from admin where chk=1 order by id asc"

rs.open sql,conn,1,3

……

rs.close

set rs=nothing

conn.close

set conn=nothing

如过需要在调用第一次时调用第二次只需要建立名称不同的两个对象就可以了,例如:

dim conn,connstr

Set conn = Server.CreateObject("ADODB.Connection")

connstr="Provider=Microsoft.Jet.OLEDB.4.0Data Source=" &Server.Mappath("db.mdb")

conn.Open connstr

set rs1=server.createobject("adodb.recordset")

sql1="select * from admin where chk=0 order by id asc"

rs1.open sql1,conn,1,3

set rs2=server.createobject("adodb.recordset")

sql2="select * from admin where chk=1 order by id asc"

rs2.open sql2,conn,1,3

……

rs1("字段")=rs2("字段")

rs1.close

rs2.close

set rs1=nothing

set rs2=nothing

conn.close

set conn=nothing


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存