| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 878 人关注过本帖
标题:从数据库读取信息按座号生成表格,没有预定座号的为空,已完成,但效率极低 ...
只看楼主 加入收藏
听松客
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-5-24
收藏
 问题点数:0 回复次数:3 
从数据库读取信息按座号生成表格,没有预定座号的为空,已完成,但效率极低!

昨天写一个预定座位的程序,要求在线提交信息,包括:座号、姓名、收费、报名点、上车点、电话、备注等信息,然后生成一个表格,来读取数据库中已提交的信息,没有被预定的座位显示为空。
程序已经写出来了,但是发现效率很低,把程序贴出来,请高手指点,或者提供一个思路也行。

现在我的数据库中已经有几条信息

我的设计思路是:先用 for 循环输出表格行数
然后每行(即每个座号)都读取一下数据库,看有没有被预定,如果没有被预定就显示为空白,如果被预定则显示预定人的信息
这样虽然实现了功能,但每次循环都得读取一下重建数据库链接,效率极低,哪位又没有好的办法,请指教。

<table width="800" border="0" cellspacing="1" cellpadding="0" align="center" bgcolor="#000000">
<tr align="center" bgcolor="#FFFFFF">
<td width="38" height="20">座号</td>
<td width="79">姓名</td>
<td width="79">收费</td>
<td width="99">报名点</td>
<td width="263">上车点</td>
<td width="100">电话</td>
<td width="134">备注</td>
<%
if session("Purview")="0" then%>
<td width="67">操作</td>
<%end if%>
</tr>
<%
set rs1=server.CreateObject("Adodb.recordset")
sql="select * from lx where id="&id
rs1.open sql,conn,1,1

for i = 1 to rs1("renshu") 'lx表有个人数字段,用来控制表格的行数也就是座位的个数
set rsc=server.CreateObject("Adodb.RecordSet")
sql="select * from yuding where lxid='"&id&"' and zuohao='"&i&"'" 'lxid 为旅游线路的ID,
rsc.open sql,conn,1,1
if rsc.eof and rsc.bof then
%>
<tr align="center" bgcolor="#FFFFFF">
<td height="20"><%=i%></td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<%
if session("Purview")="0" then%>
<td width="67"></td>
<%end if%>
</tr>
<%
else
%>
<tr align="center" bgcolor="#FFFFFF">
<td height="20"><%=i%></td>
<td><%=rsc("names")%></td>
<td><%=rsc("shoufei")%></td>
<td><%=rsc("bmdian")%></td>
<td><%=rsc("scdian")%></td>
<td><%=rsc("tel")%></td>
<td><%=rsc("remark")%></td>
<%
if session("Purview")="0" then%>
<td width="67"><a href="Admin_Modify_yd.asp?id=<%=rsc("id")%>">修改</a> <a href="Admin_Del_yd.asp?lxid=<%=rsc("lxid")%>&id=<%=rsc("id")%>" onClick="return ConfirmDel();">删除</a></td>
<%end if%>
</tr>
<%
rsc.close
end if
set rsc=nothing
next
rs1.close
set rs1=nothing
%>
</table>

图片附件: 游客没有浏览图片的权限,请 登录注册

[此贴子已经被作者于2007-5-24 10:46:53编辑过]

搜索更多相关主题的帖子: 座号 数据库 表格 效率 预定 
2007-05-24 10:42
shdyh977
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2007-5-22
收藏
得分:0 
其实你可以换个思路的,座位号是固定的,你可以预先在数据库里把所有的座位号先添加上去(其他信息为空),这样在程序里你只要一次性读出这些数据就可以了
2007-05-24 11:12
听松客
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-5-24
收藏
得分:0 
感谢2楼的回答
您的方法虽然在生成表格时省了很多事

但是如果座位数调整的话就比较难处理
比如:原来座位数是30个,现在改成了40或者20个,又该怎么处理数据库中的数据呢?
2007-05-24 17:55
shdyh977
Rank: 1
等 级:新手上路
威 望:1
帖 子:109
专家分:0
注 册:2007-5-22
收藏
得分:0 
不管你怎么调整,过去的记录是不用更改的,每次发车你做一个程序,把座位的数量设置成一个变量,输入变量后保存就可以预先添加所有的座位,不管座位数你怎么变,都没问题的
2007-05-25 09:53
快速回复:从数据库读取信息按座号生成表格,没有预定座号的为空,已完成,但效率 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016839 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved