SQL Server 2005数据库分区数据的移入和移出

『 更新时间:2008-4-13 』『 字体:变小 变大 』『 作者:佚名 | 来源:互联网

以下是引用片段:
  -- switch in
  CREATE TABLE newPartTable (col1 INT CHECK (col1 > 30 AND col1 <= 40 AND col1 IS NOT NULL),
  col2 VARCHAR(20))
  GO
  -- insert some sample data into new table
  INSERT INTO newPartTable (col1, col2) VALUES (31, 'newPartTable')
  INSERT INTO newPartTable (col1, col2) VALUES (32, 'newPartTable')
  INSERT INTO newPartTable (col1, col2) VALUES (33, 'newPartTable')
  -- select the data
  SELECT * FROM partTable
  SELECT * FROM newPartTable

  这里我们可以看到partTable和newPartTable两个表的情况。

  下一组命令就是用来转移数据的。我们用ALTER TABLE命令把数据从表newPartTable中把数据转移到分区表的第4分区里。我们选择第4分区是因为我们插入col1的值需要匹配分区函数的设置。完成数据的移植之后,可以输入select data,就会看到newPartTable的全部数据都移到了partTable里。而且表newPartTable在数据移出后依然存在。

以下是引用片段:
  -- make the switch
  ALTER TABLE newPartTable SWITCH TO partTable PARTITION 4;
  GO
  -- select the data
  SELECT * FROM partTable
  SELECT * FROM newPartTable

  数据移出

  反过来,有时候我们也需要从数据库的分区表里把数据转移到别的表里。那要怎么做呢?首先我们来创建一个名为"nonPartTable"的表,分区方案同上。注意,这个表中的列只含有基本的信息,不需要创建CHECK约束。

  创建新表后,我们还是使用ALTER TABLE命令来把第1分区里的"partTable"表中的数据转移到新建表"nonPartTable"中。第1分区里的数据是所有"col1"值小于10的条目。

  转移数据之后,我们来执行select the data命令。

以下是引用片段:
  -- switch out
  CREATE TABLE nonPartTable (col1 INT, col2 VARCHAR(20))
  ON [primary] ;
  GO
  -- make the switch
  ALTER TABLE partTable SWITCH PARTITION 1 TO nonPartTable ;
  GO
  -- select the data
  SELECT * FROM partTable
  SELECT * FROM nonPartTable

  从下图可以看到,partTable里的数据已经转移到了表nonPartTable里。

  现在我们了解到数据分区功能对于移动和维护大量数据集有很大的作用。不过最后要说的是,虽然这个功能看起来很简单,但是在实施数据分区方案之前还要考虑很多因素。

上一页  [1] [2] 

【点击数:】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口

关文章

您的姓名:
评分等级:
1分 2分 3分 4分 5分
评论内容:
1、严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
2、用户需对自己在使用金石网服务过程中的行为承担法律责任。
3、本站管理员有权保留或删除评论内容。
4、评论内容只代表网友个人观点,与本网站立场无关。
  • 金石网
  • | 设为首页 | 加入收藏 | 联系我们 | 版权申明 | 友情链接 | 站点地图 | 网站帮助 | 网站留言 | 广告服务 |
  • Copyright © 2001-2008 KingsNet.biz All Rights Reserved. 闽ICP备05026663号
  • 返回网站顶部