В самом конце вашей процедуры у вас есть следующая ВСТАВКА:
INSERT INTO tblPersonRelationship
SELECT @RelatedID, @OpposingRelationship, @PersonID,
MarriageDate, NULL, NULL,
ResidesWithPersonFlag, NULL, UpdateDateTime, UpdateProgram,
UpdateUserID, UpdateDateTime, UpdateProgram,
UpdateUserID, NULL FROM tblPersonRelationship WHERE PersonRelationshipID = @ExistingRelationshipID
Этот код сломается, если вы добавите еще один столбец в tblPersonRelationship. Поэтому вам нужно заменить этот код следующим:
INSERT INTO tblPersonRelationship(explicit list of columns you are providing values for)
SELECT @RelatedID, @OpposingRelationship, @PersonID,
MarriageDate, NULL, NULL,
ResidesWithPersonFlag, NULL, UpdateDateTime, UpdateProgram,
UpdateUserID, UpdateDateTime, UpdateProgram,
UpdateUserID, NULL FROM tblPersonRelationship WHERE PersonRelationshipID = @ExistingRelationshipID
by "список столбцов, которые вы предоставляете значения для" Я имею в виду список значений в вашем SELECT:
@RelatedID, @OpposingRelationship, @PersonID,
MarriageDate, NULL, NULL,
ResidesWithPersonFlag, NULL, UpdateDateTime, UpdateProgram,
UpdateUserID, UpdateDateTime, UpdateProgram,
UpdateUserID, NULL
Поскольку вы не предоставляете значение для вашего rowguid, не включайте его в список столбцов.