WEB开发网:在平时的使用中我们可能会有很多问题,本人将informix一些常见的问题整理如下:如何加快查询的速度?Question:为什么在一个有30000条记录并且建立有索引的表进行操作很慢,怎么办?30000
赞助商链接
中资源
>> 最新文章
>> 赞助商
>> 热门文章
WEB开发网文章阅读

Informix FAQ大全

作者:佚名 文章来源:不详 更新时间:2007-12-8 15:53:54

在平时的使用中我们可能会有很多问题,本人将informix一些常见的问题整理如下:


如何加快查询的速度?

Question:为什么在一个有30000条记录并且建立有索引的表进行操作很慢,怎么办?

30000条记录并不是太多,你会感觉有慢不应该是记录数太多的缘故,原因可能是每条记录太长,或者你的机器的性能十分低,不过还是有一些方法可能会对性能有所帮助:

1.更新统计信息(update satistics on tablename),这很容易作,并且有可能会带来性能的提高。

2.删除,然后再重新创建索引。这样作能够增加索引的连续性。但是要求是DBA或者有创建索引的权限。

3.ALTER INDEX idxname TO CLUSTER: 这样作的目的是重新创建表并且通过索引来重新排列记录。结果是强制使记录在逻辑上连续,并且提高物理上的连续性。这样作的代价最大,但是效果最好。但是,一个表中只能有一个cluster index,并且,重新排列记录可能会强迫其他的查询使用其他的索引。作这种工作,你必须要为DBA或者有alter table 的权限。并且请注意,在你运行cluster index的时候,你必须要有足够的空间,因为在为一个表创建cluster index的时候,会拷贝表中所有的记录到一个临时表中,在临时表中进行排序操作,然后会删除原来的表,然后将临时表的名字改为原始表的名字。因此,如果这个表中的数据变化很大,如经常要进行大量的插入/删除的操作,这样作的好处就体现不出来。

百度搜索中共有相关主题
[阅读:次] [返回上一页] [打 印]
  • 相关文章
  • 本类热门