Tôi viết thư này một theo dõi Changing data type of column in SQL Serverrơi/Vô hiệu hóa chỉ số là tốt hơn trong sql máy chủ
Câu hỏi của tôi trước đó là nếu tôi cần phải loại bỏ tất cả các chỉ số và những hạn chế và nó đã trả lời tôi cần phải loại bỏ chúng.
Vì vậy, khi tôi lướt internet về chủ đề, tôi đã xem qua một vài bài nói rằng tốt hơn là tắt và bật chỉ mục, thay vì xóa và tạo lại chúng.
Vì vậy, cách nào tốt hơn để thực hiện? Việc vô hiệu hóa chỉ mục có cho phép bạn thay đổi kiểu dữ liệu của cột không? Sự khác biệt giữa cả hai là gì?
Tuyên bố với giảm và tạo index
DROP INDEX UX_1_COMPUTATION ON dbo.Computation
ALTER TABLE dbo.Computation
ALTER COLUMN ComputationID NVARCHAR(25) not null
CREATE UNIQUE INDEX UX_1_COMPUTATION ON dbo.Computation (ComputationID);
Tuyên bố với việc vô hiệu hóa và kích hoạt chỉ số
ALTER INDEX [UX_1_COMPUTATION ] ON dbo.Computation DISABLE
ALTER TABLE dbo.Computation
ALTER COLUMN ComputationID NVARCHAR(25) not null
ALTER INDEX [UX_1_COMPUTATION ] ON dbo.Computation REBUILD;
Bạn có chạy tập lệnh thử nghiệm không? Bạn cũng có thể xem tài liệu hướng dẫn, cho bạn biết [các hạn chế để thay đổi một cột] (http://msdn.microsoft.com/en-us/library/ms190273.aspx) được sử dụng trong một chỉ mục và cũng là những gì [ vô hiệu hóa các chỉ mục] (http://msdn.microsoft.com/en-us/library/ms177406 (v = sql.100) .aspx). Hy vọng rằng nó là rõ ràng rằng có một sự khác biệt giữa vô hiệu hóa một cái gì đó và giảm (xóa) nó. – Pondlife
@Pondlife Cảm ơn thông tin – Sam