收录日期:2019/06/20 13:50:18 时间: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(游游淡淡) 
你这么说不是治标不治本吗? 如你所说的我就不用花这些精神了, 下下策

大家怎么都不讨论伊战了??? 请帮我看看这几句代码?谢谢了焦急等待 高分求购WEB SERVICES项目源码,作参``学习学习 删了一些数据库内容,原来正常的ASP程序搜索不到关键词了,会有哪些原因? 请问ACCESS数据库最多可以存储多少条记录? 请问ACCESS数据库最多可以存储多少条记录? 实在都是不好意思问了,float和double 如何用delphi把一个word文档存入数据库,然后取出来打开? media service 技术??? 数据如何批量提交? access数据库:3000条数据是否会带来效率问题 如何用delphi把一个word文档存入数据库,然后取出来打开? 救急!!SQl server 如何将字符串转换未日期类型? 郁闷啊,我的服务器到底怎么了,高手帮助我啊 郁闷,接二连三遇病毒!各位小心了…… media service,技术 小弟初用VC.NET,请问怎样设置 项目 的 环境空间 不知道SQl server 如何将字符串转换未日期类型?oracle 可以用 TO_DATE(\'2004-2-1\',\'YYYY-MM-DD HH24:MI:SS\') Canon s100sp怎么用16k的纸啊? ■■■■■■■■■■■关于 MessageBox 的菜鸟问题· 高分求助!电脑用了十分钟就死几?怎么回事?100分!!!!! apache+mod_gzip的问题. 散分~~~ 出于简便,想在struts中的多个请求对应一个action实例,那我在action中如何区分不同的请求? CreateRemoteThread 错误 简单问题 怎么得到一个DC当前已绘制的内容,或者怎么Copy一份DC? 出于简便,想在struts中的多个请求对应一个action实例,那我在action中如何区分不同的请求 请问谁能帮助我用VC-ADO连接数据库的例子,在线等。。。 c++builder 中结构化异常处理程序编译出错!