2
我有一个夜间运行的大规模作业,并且对数据库具有较小的影响,它在不常用的不同架构(EmptySchema)中的表上运行,然后交换到常用位置( UsualSchema)使用使用ALTER SCHEMA传输表时,索引会发生什么变化?
ALTER SCHEMA TempSchema TRANSFER UsualSchema.BigTable
ALTER SCHEMA UsualSchema TRANSFER EmptySchema.BigTable
ALTER SCHEMA EmptySchema TRANSFER TempSchema.BigTable
哪个有效地互换这两个表。
但是,我需要在UsualSchema表上设置索引。我可以在UsualSchema表上禁用它们,然后在交换发生后重新启用它们吗?或者我每次都必须在换出的桌子上创建它们?或者在两个地方都有重复的索引,并根据需要禁用/启用它们(导致源代码管理中出现重复,因此不理想)?有没有更好的方法来做到这一点?
有一个聚簇索引和五个非聚簇索引。
谢谢。
SQL Server或Sybase? – jarlh
我正在使用SQL Server –
在此处阅读:http://dba-presents.com/index.php/databases/sql-server/44-changing-a-schema-of-an-object-in-sql-服务器似乎像这些指标隐含在移动中,并保持不变。即使外键也被保留下来,因为它们可以从模式A中的表格指向模式B中的表格......可惜MSDN文档完全没有提到这个 – dlatikay