Tôi cần cập nhật khóa chính cho bản ghi nhưng đó cũng là khóa ngoài trong hai bảng khác. Và tôi cũng cần khóa chính được cập nhật để được thể hiện trong bảng con.SQL Server cập nhật khóa chính cũng là khóa ngoài trong hai bảng
Đây là câu hỏi của tôi và các lỗi:
begin tran
update question set questionparent = 10000, questionid= 10005 where questionid = 11000;
Error 9/4/2009 10:04:49 AM 0:00:00.000 SQL Server Database Error: The UPDATE statement conflicted with the REFERENCE constraint "FK_GoalRequirement_Question". The conflict occurred in database "numgmttest", table "dbo.GoalRequirement", column 'QuestionID'. 14 0
Tôi không nhớ làm thế nào để đi về việc này vì vậy đó là lý do tại sao tôi ở đây. Bất kỳ giúp đỡ?
Một tùy chọn khác: tránh có khóa chính có thể thay đổi. Sử dụng một IDENTITY làm khóa chính thay thế. Giữ một ràng buộc duy nhất trên các cột cần phải là duy nhất. Điều đó có thể nằm ngoài tầm kiểm soát của bạn, nhưng nó hoạt động tốt cho chúng tôi. Người dùng của chúng tôi có thể thay đổi ID bao nhiêu tùy thích và không ảnh hưởng đến khóa chính thực sự. –