弱弱地问一下,表分区好后,数据会自动条件移动到分区里去吗?
高手给我普及一下关于数据分区的问题!或者留个联系方式,方便小生请教!
------解决方案--------------------对表分区后,数据库会自动的将数据归属到对应分区的次数据库文件中
------解决方案--------------------关于表分区的解释MSDN上有很多,其实你照着例子做一下就明白了,可以看到数据分布在哪个分区。 比如这篇文章:
http://www.it165.net/database/html/201208/2849.html
------解决方案--------------------建立表分区步骤:
1、建文件组并给每个文件组下最少建一个次要文件。
2、建立分区函数,指定按哪种数据类型去分区,一般用到的类型为,数值类型和时间类型。同时,为分区函数指定分区边界值,谓词有LEFT和RIGHT,left指包括边界值,Right指不包括边界值。
3、建立分区方案,指定分区方案属于哪一个分区函数,并为分区方案指定数据存储的文件组。如果分区函数有4个边界值,那么分区方案指定的文件组必须是5个,分区方案指定文件组个数必须比分区函数的边界值个数多一个。
4、建立分区表,就是建表的时候,需要指定表建在哪一个分区方案上面,即在create table tablename() 后面加上 on 分区方案(分区字段),这个字段的数据类型必须与分区函数中指定的数据类型一致。
------解决方案--------------------在先建表的情况下再分区:
前面3步跟都相同,
4、先删除表中的聚集索引,然后在重建聚集索引的语句后面+on 分区方案(分区字段),这样表分区就做好了。
这个原理是,聚集索引是包含列,而且聚集索引和数据存放的位置必须在同一个文件,重建聚集索引并指定存放位置,会使数据跟聚集索引一起存放到一个文件,表中的数据也会自动移动到聚集索引所在的文件。