如果我有一个带索引的空表并执行bcp,SQL Server(内部)是否删除/禁用索引,加载数据然后重新应用/启用/构建索引?
答案 0 :(得分:8)
不,在整个操作过程中都会保留索引。实际上,Microsoft表示可以使用-h ORDER
提示根据聚簇索引对数据进行排序,从而提高bcp性能。有关详细信息,请参阅bcp Utility documentation。但是,正如here所述,为了尽可能快地导入,您应该采取以下步骤:
·“select into / bulkcopy” 数据库选项必须设置为“true”。
·目标表不应该 有任何索引。 [强调补充]
·目标表不得为 发布以供复制。
·使用TABLOCK锁定 目标表。
答案 1 :(得分:3)
不,它不会,但它会尽力使它尽快。您也可以通过遵循一些基本准则(参见http://msdn.microsoft.com/en-us/library/ms177445.aspx)来帮助您。