Bài viết này trình bày cách bỏ một cột trong cơ sở dữ liệu SQL Server, khi cột đó có một ràng buộc hiện có (Gợi ý:Bạn cần bỏ ràng buộc trước).
Nếu bạn đã từng cố gắng bỏ một cột, hãy nói như sau:
ALTER TABLE Tasks DROP COLUMN TaskCode; GO
Chỉ gặp lỗi như thế này:
Msg 5074, Level 16, State 1, Line 1 The object 'taskcode_unique' is dependent on column 'TaskCode'. Msg 4922, Level 16, State 9, Line 1 ALTER TABLE DROP COLUMN TaskCode failed because one or more objects access this column.
Lý do là cột có một ràng buộc hiện tại và bạn không thể bỏ bảng khi nó có một ràng buộc.
Do đó, bạn cần bỏ ràng buộc trước khi bỏ bảng.
Bỏ Ràng buộc trước
Dưới đây là cách loại bỏ ràng buộc:
ALTER TABLE Tasks DROP CONSTRAINT taskcode_unique; GO
Kết quả:
Commands completed successfully.
Sau đó thả bảng
Bây giờ bạn đã bỏ ràng buộc, bạn có thể tiếp tục và bỏ bảng:
ALTER TABLE Tasks DROP COLUMN TaskCode; GO
Kết quả:
Commands completed successfully.