打开表后,首次指向最后一条纪录耗时巨久!这是为什么?
用的是bde 的数据控件 (TQuery)
单使用‘select * from table where id > 0 order by id’打开一个
数据量在20w左右的数据表时,大概用3-4秒,郁闷的是,如果我紧接
着用qry-〉Last()去定位它最后一条纪录时却需要20秒甚至更久。
有没有什么办法可以克服???
就剩下10分了,郁闷
[解决办法]
一次打开20W的数据不太实际吧,即使要看记录数也没必要直接开启整张表
根据条件来打开应该更有效率
如果要查看最后一条记录,可根据编号获得一个编号最大值的记录
数据库要提高性能可以用集群,20W不算多
[解决办法]
可以用‘select top 1 * from table where id > 0 order by id desc’来取得最后一条纪录,
这样的速度很快
[解决办法]
ID设为 索引
我的400万条记录 打开需要不到一秒呀(500 毫秒左右)
[解决办法]
有索引速度就会快很多了!
[解决办法]
ID是什么,是自增字段吗?
当数据量大的时候,不要在没有索引的字段上使用 Order by