You can build the logic in to the stored proc a few different ways. For example, you can pass in a field id of 1,2,3, or 4 and choose the column to be updated based on that. All four columns must be of the same data type for that to work. Alternatively, you could have four arguments, one for each column and pass in an impossible value (NULL for example) for those columns you don't want to update. The first approach I described can be implemented like this:CREATE PROCEDURE dbo.PerformUpdateForField1 @IDTable INT, @Field NVARCHAR(MAX), @FieldId INTASUPDATE dbo.MyTableSET Field1 = CASE WHEN @FieldId = 1 THEN @Field ELSE Field1 END, Field2 = CASE WHEN @FieldId = 2 THEN @Field ELSE Field2 END, Field3 = CASE WHEN @FieldId = 3 THEN @Field ELSE Field3 END, Field4 = CASE WHEN @FieldId = 4 THEN @Field ELSE Field4 ENDWHERE IDTable = @IDTable;