2010-01-22 30 views
9

Chúng tôi đang gặp sự cố với hàm SQL được mã hóa kém (hoạt động tốt, nhưng không có trong môi trường thử nghiệm của chúng tôi). Hàm này được sử dụng để cung cấp giá trị mặc định trong nhiều bảng, cố gắng ALTER hàm trả về lỗi "Không thể ALTER ### vì nó đang được tham chiếu bởi đối tượng".Sửa đổi một chức năng được sử dụng như một cột mặc định trong SQL Server

Có cách nào làm tròn thông báo lỗi này không? Cách duy nhất tôi có thể nghĩ về chúng tôi cố gắng viết một kịch bản để loại bỏ nó khỏi mọi bảng có nó như là một mặc định, thay đổi hàm và thêm lại nó sau đó.

Cảm ơn

Trả lời

12

Vì đối tượng được tham chiếu, bạn không thể sửa đổi nó. Đây là những gì bạn cần làm:

  1. Hủy bỏ các hạn chế mặc định từ bảng/cột
  2. Sửa đổi các chức năng
  3. Thêm các hạn chế mặc định trở lại
5

Máy chủ SQL sẽ không cho phép bạn sửa đổi hàm bị ràng buộc ràng buộc DEFAULT của cột.

Tùy chọn duy nhất của bạn là xóa ràng buộc trước khi thay đổi hàm. (Source)

Các vấn đề liên quan