Это, вероятно, не лучший способ, но .... Что, если бы вы создали первичный ключ в таблице [Data],
PK: (PersonID, Visit, Tested)
Тогда вы могли бы создать функцию для вставкидля каждого personID и дня
CREATE PROCEDURE InsertTests
@PersonID int
, @Day nvarchar(10)
Begin
BEGIN TRY
INSERT INTO [Data]
(PersonID, Visit, Tested, Done)
VALUES
(@PersonID, @Day, Eyes, No)
END TRY
BEGIN CATCH
END CATCH
BEGIN TRY
INSERT INTO [Data]
(PersonID, Visit, Tested, Done)
VALUES
(@PersonID, @Day, Ears, No)
END TRY
BEGIN CATCH
END CATCH
BEGIN TRY
INSERT INTO [Data]
(PersonID, Visit, Tested, Done)
VALUES
(@PersonID, @Day, Smell, No)
END TRY
BEGIN CATCH
END CATCH
End