xxx学校校园网站建设实践,食品包装设计要求规范,做摄影网站的公司,vs2008做html5网站最近在做的一个项目#xff0c;由于涉及到数据量会在半年内破千万条#xff0c;考虑到数据量比较大#xff0c;日后查询起来会比较费时#xff0c;所以考虑使用oracle的分区特性。oracle10g产品中的分区表分为List#xff0c;hash#xff0c;range三个。经过分析#xf…最近在做的一个项目由于涉及到数据量会在半年内破千万条考虑到数据量比较大日后查询起来会比较费时所以考虑使用oracle的分区特性。oracle10g产品中的分区表分为Listhashrange三个。经过分析我的数据表Test_table_name中的SPCODE列的值是若干个固定不变的而且该列不会被更新到。这样它符合List分区的特性。所以决定使用list分区来做。有一点需要注意的是我们必须在建立表时进行分区而不能在建完未分区的表后添加分区。当然oracle提供了重定义表的方式可以用来重新分区但它会删除所有数据。建立分区表create table test_table_name(spcode varchar2(8), time date, ……) partition list(spcode)(partition 分区1 values(sp01),partition 分区2 values(sp02))可以使用 select * from user_tab_partition 查看分区情况在list分区后假如还有新的分区键值进来这时我们有这种处理方式1使用默认分区。2添加新的分区。第一种的语法是 alter table test_table_name add partition 新分区3 values(sp03)第二种的语法是 alter table test_table_name add partition 默认分区 values(default); -- default为oracle关键字这里需要注意的是如果一旦使用了默认分区那么在下次我们想添加新分区时有可能就会报错。因为新的分区的值可能在默认分区中出现过。在建立完分区后这个时候我可以认为建立了几个表格(类似一个分区就是一个表)所以为了提高查询效率我们还可能会建立索引在分区中分为全局索引和分区索引。假如分区还会不断的新增的话建议使用分区索引这样不会在新增表时破坏索引。本地分区索引的语法create index index_name on test_table_name(linkid) local;或者 create index index_name on test_table_name(linkid) local (partition 分区1, partition 分区2,…………)可以使用 select * from user_ind_partitions 来查看是否已经建立成功。