收录日期:2019/04/18 21:12:07 时间:2016/06/01 15:43:48 标签:ASP
在SQL2000库有AA表每月记录大概都有1万条左右, 有10个字段, 现在要求把这1万条左右的记录各字段内容都输出来, 用ASP实现, 要求不分页, 读出来排列整齐, 无论用什么方法,总之要在2秒以内读出来,请各位提供高效代码,谢谢

说明:我试过用存储过程读出但没有表格附助排列时就在2秒以内都读出来,但一用表格附助排列输出就2秒内完成不了任务,请各路高手指点
mk
关注
排序可以使用sql语句的排序。
建议修改存储过程所有的工组都在数据库上做,asp只负责显示。
关注
关注
你加了表格,就必要要多读取这些表格的代码,而且是每条记录都要生成和处理.
asp读取数据表中值方式就那么一两样吧。 如果想取分每行的数据,不妨考虑css加个下划线或者底色什么的,可能会更快一点。
说明:我试过用存储过程读出但没有表格附助排列时就在2秒以内都读出来,但一用表格附助排列输出就2秒内完成不了任务,请各路高手指点

你的意思是要2秒全部在客户端显示出来吧~?~

那跟客户端的电脑的配置有关。你运行在快。客户端的电脑慢,你也没办法~~~。
当然你的程序必须要在2秒内运行完毕。。。。。
这应该不是服务器端程序的问题,关键这么多数据表格要全部显示出来要时间。
你只能尽量把表格弄简单点。
或者先在服务器端生成静态页面,这样客户端就只需下载表格,读取数据库的时间就省了,看能不能在2秒之内搞定
有一定的难度
ahuiok(fervor) 
不妨考虑css加个下划线或者底色
----------
觉得此方案有可行性
附css

<style> 
.DoubleColorTable tr{
 background-color:expression("#FFFFFF,#EEEEEE".split(",")[rowIndex%2])

</style> 
<table width="70%"  border="1" cellpadding="0"  class="DoubleColorTable">
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  </table>
綜合以上各位所說,還是沒把問題解決,我這個是進銷存系統,必需要按我所說的解決,還望各位再幫想想辦法
up~~~~~~~~~~~~~~~~~~
如果你一定要办法。
那把你的要输出内容表格的电脑的配置弄得很高。
路过了,但没有高见,也遇到这样的问题了

-------
ahuiok(fervor) 
不妨考虑css加个下划线或者底色

-------

考虑一下这个吧
关注
总之一句话:
方法1。少用表格。ASP中只显示!查询代码在SQL中实现
方法2。提高计算机的配置
方法3。在网页上少做美工(因为在执行时要花一定的时间)
不明白为什么一定要两秒。
可以考虑表格嵌套的方法,因为一万条任何一个人都不可能一眼就看完。
所以,先让用户看到前面的数据就好了。
同意mymib的,为什么要两秒,是客户的需求还是?是否合理?

=========================================================================

不明白为什么一定要两秒。
可以考虑表格嵌套的方法,因为一万条任何一个人都不可能一眼就看完。
所以,先让用户看到前面的数据就好了。
如果有附加表条件,建议先放到SQL视图里面,然后在ASP里面连存储过程
ASP页面加载的情况,少用美工,表格方面,看看写成这格式会不会快一点
response.write "xxxxxxxxxxxxxx"&_
"xxxxxxxxxxxxxxxxxxx"&_

这样就会减少页面的下载时间,理论上是!
在这么大容量下不知道用二维数组的情况下速度会怎么样,你也可以试一试
sql = "select xx,xxx,xxxx,xxxx,xxxx.... from [表]"
set rs = conn.execute(sql)
sss = rs.getrows
rs.close

然后直接输入数组
for i=0 ti ubound(sss,2)
输出..sss(0,i)
next
打错了一个字母for i=0 ti ubound(sss,2)是for i=0 t0 ubound(sss,2)
这样试试
dim rs   'recordset
.....
response.write "<tr><td>"
response.write rs.GetString(,,"</td><td>","</td></tr><tr><td>")
response.write "</td></tr>"
UPING,,,,
谢谢以上各位的高见,不过无论是用二维数组或是CSS加下横线等,只要一套表格一起输出显示就会慢,不行呀,各位再帮帮忙啦.....
我给你说一种方法,你可以试试。
你应该知道ASP在发送数据到客户端的时候是一个表格一个表格传送的吧?
你在做的时候,让显示数据的表格外没有其他任何表格包含它,然后这个表格就显示20条记录,然后一个表格一个表格进行输出,这样,就会出现页面逐渐拉长的现象,你这个问题就解决了,你可以试试。呵呵。
TO xx123731(木头人) 这些方法行不通的,不是我想要的东东,
现在我把问题锁定了是数据连表格一起输出就会慢,到底有没有其它能代替表格来排列的?
用固定布局表,不用缓冲直接输出的那种
有没有试过我的方法,用GetString就不用循环,速度会大大提高。
不用表格度试<%
response.write"-----------------------------------------------------------"
while not rs.eof
response.write"<center>|"&rs("1")&" | "&rs("2")&" | "...."&rs(10)&"</center>"
rs.movenext
wend
rs.close
response.write"-----------------------------------------------------------"
%>
关掉response.buffer

每行记录用一个单独的表格显示,这样视觉上应该可以吧
老问题再顶起来,综合以上各位所说的方法都试过了,
无论是do whilte not 这方法或是
response.write rs.GetString(,,"</td><td>","</td></tr><tr><td>") 这方法或是用二维数组的方法,得出的结论就是数据连表格一起输出就会慢,到底有没有其它方法能代替表格来排列的一样整齐而又能提束的?

还请各位指点
同意mymib的,为什么要两秒,是客户的需求还是?是否合理?
那肯定是客户的要求啦, 客户说慢呀, 不提速要骂了
输出时候先输出一个进度条,客户就不会感觉那么难受了。
TO chi0591(游游淡淡) 
你这么说不是治标不治本吗? 如你所说的我就不用花这些精神了, 下下策

还有两个问题解决不了,请各位再帮忙 新手上路,如何做权限与角色的维护? 考系分看什么教材和辅导书?市场上没有指定教材卖,气愤! 奇怪奇怪真奇怪 VARIANT 和 BSTR 是如何互相转换? 建立session一定要用global.asa文件并在里面定义吗?可不可以不用global.asa而直接在asp页面里set session(\"aa\")=\"asdf\" 关于\"multipart/form-data\"的问题,急在线等待 为什么十日以上between语句就出问题了呢? 考系分看什么教材和辅导书?市场上没有指定教材卖,气愤! 卡壳了,急需解决(已一个礼拜了) 今天打开邮箱,看了5460给我信才知道今天是我的生日!呵呵,命苦,今天生日,却没人和我一起过。 检验科信息管理系统有吗? 请问,在C#菜单中怎么样为菜单添加图标? 我要能访问以汉字命名的网页吗? 调试的问题和字体问题 请问一个打包的问题 会使用install shield的朋友看过来,怎样用IS6.0做桌面和程序组的快捷键? 请问新浪工具条,是怎样实现的,如何编写这样的COM IIS的日志文件在哪里,我怎么看到或设置它的日志文件? 如何查看数据库中某数据是否被锁?谢谢 调试问题和字体问题 请教,程序运行时间长了,关闭时会出现非法操作的对话框是怎样引起的啊,我在程序关闭时释放了用到的资源。 静态库链接问题,会者拿分150! pocket pc web modem编程遇到问题,请教各位。 在线求助!!如果我在RichEditView中选中了一段文本,将它拷贝到了Clipboard中,我怎么才能从Clipboard中得到它? 各位好,我刚接触XML,什么都不大懂,给些指点吧! 精确位置如何整。 大家帮忙看一下,我对下面程序的理解对不对。。 !!!紧急求助!!!