关于一个查询速度的问题!

NetVan 2003-07-24 05:34:49
我的数据库中有2万条记录。
我在name上建立了索引,
下面语句:
Set rs= Server.CreateObject("ADODB.Recordset")
sql="select * from member where name Like '%"& name &"%' "
rs.open sql,conn,1,1



Set rs= Server.CreateObject("ADODB.Recordset")
sql="select * from member where name Like '%"& name &"%' "
set rs=conn.excute(sql)

上面name是一个接受的变量。
同样的SQL语句,上面的语句可以利用索引。
但下面的索引起不到作用。
因为我要做分页显示。所以只能用上面的。
但是速度差100倍
要分页显示有什么好的方法吗?
求助!

...全文
62 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
popnew 2003-07-24
  • 打赏
  • 举报
回复
如果是MS SQL 大数据 考虑用存储过程
summercat 2003-07-24
  • 打赏
  • 举报
回复
2万条记录对sqlserver 小菜,不用考虑,如果慢要考虑一下你的数据库设计,和你的程序了........
Muzhu 2003-07-24
  • 打赏
  • 举报
回复
存储过程是解决不了问题的。
Jaron 2003-07-24
  • 打赏
  • 举报
回复
最简单的:

CREATE PROCEDURE sp_s_useradmin AS
SELECT * from tblusers
go

调用时,把你的 sql 语句替换成

sql = "sp_s_useradmin"

就行了,呵呵
tonnycncn 2003-07-24
  • 打赏
  • 举报
回复
比如每页100条记录,
每次只取100条记录。

可以在存储过程中完成大部分操作。
seraph2 2003-07-24
  • 打赏
  • 举报
回复
请教一下高手:不要介意啊!

对了怎么做啊!?我现在遇到同样的问题,做查询的时候由于数据量过大,计算的时间是相当的长,也许他的记录比我的多,但是我的计算量要远远大于他的计算,我做的东西用的是oracle,取内部段的某个段的某条记录进行计算,计算完后又要与其他的数据进行计算,我把能放到动态数组里的数据都放到里面了,速度是有所改善,但后面还有最后的两步运算无法用数组实现,只好直接连接库,并进行查询全库,前面计算出的数据量如果超过20条的话那么就要打开数据库80次左右,这样的速度确实太慢了,所以想请教一下各位有什么好办法啊!
Tonglu 2003-07-24
  • 打赏
  • 举报
回复
怎么做???强烈要求告诉我,谢谢谢谢谢谢谢谢
smuzy 2003-07-24
  • 打赏
  • 举报
回复
2万条记录是sqlserver吧?

如果是这样的话建议你直接使用存储过程作分页

我可以告诉你怎么做

28,391

社区成员

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

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