db2 V9.0 表碎片


      近日对一个表做的操作多了,主要是直接通过SQL语句加字段、修改字段长度、删除字段、导入数据、删除数据、检索之类的操作,用着用着就发现,这个表出问题了,写select检索该表的数据,会给出报错信息,说该表有碎片了,不能正常使用了,查找了一下,需要用reorg命令清除碎片。执行reorg命令之后,可以重新检索数据了。觉得有点不可思议的,Oracle也会产生碎片的,但Oracle却不会影响用户继续使用。

 

      越来越觉得DB2的问题真多,使用起来真麻烦的。比如:
     1、没有一个比如好的客户端工具,DB2自带的控制中心也比不上mssql、oracle的好用。
     2、还原比较麻烦,经常需要前滚、重定向之类的。用restore命令还原,真让我花了不少时间。
     3、会莫名其妙地生成一些表,如T20090815_171657,查找了一下,还不清楚是为什么,需要再安排个时间来专门研究一下。

     4、NULL值与时间类型的排序,NULL值问题排在前面。

     5、对一个表做的CRUD或加字段、删字段之类的操作多了,容易导致表出现问题。如-668   56018  不能向用EDITPROC定义的表中添加列,这时需要reorg table.
     可能还会有其它的,一下子想不起来了。

 

      列举的这些都是跟用户体验相关的,我相信DB2很强大,毕竟发展了20几年了,但却让我体会不到易用的感觉。现在负责的系统跟另一个系统有很强的关系,而另一个系统是用mssql的,考虑调整系统,使其支持mssql,这样用户就多一种选择,也可为以后的产品化做铺垫。

你可能感兴趣的:(db2)