有时候数据库中数据太多,需要定期做存档,比如某些业务需求中需要按照月将表产生的数据存档为新的表中,清空当前表。
一般的简单的做法可以使用SELECT INTO语法,如果表数据很多,那么要花点时间。可以使用SWITCH PARTITION快速完成:
ALTER TABLE Orders SWITCH to Orders201603
要求:
目标表必须和原表结构一致,且为空
目标表和原表在相同的filegroup
之所以速度快是因为没有实际进行数据移动,仅仅是修改了数据位置的metadata
参考:
https://technet.microsoft.com/en-us/library/ms191160(v=sql.105).aspx