Ich muss den Primärschlüssel für einen Datensatz aktualisieren, aber es ist auch der Fremdschlüssel in zwei anderen Tabellen. Und ich brauche den aktualisierten Primärschlüssel, der auch in den Kindtabellen reflektiert wird.SQL Server-Update Primärschlüssel, der auch ein Fremdschlüssel in zwei Tabellen ist
Hier ist meine Abfrage und der Fehler:
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
Ich erinnere mich nicht, wie das gehen zu tun, ist also, warum ich hier bin. Irgendeine Hilfe?
Eine weitere Option: Vermeiden Sie einen veränderbaren Primärschlüssel. Verwenden Sie stattdessen IDENTITY als Primärschlüssel. Behalten Sie eine eindeutige Einschränkung für die Spalten, die eindeutig sein müssen. Das liegt vielleicht außerhalb Ihrer Kontrolle, aber es funktioniert gut für uns. Unsere Benutzer können die ID so oft ändern, wie sie möchten, und sie hat keinen Einfluss auf den eigentlichen Primärschlüssel. –