I found some code that tells me which columns changed during an update. But I'm getting the following error when I update a record in the table...Arithmetic overflow error converting expression to data type bigintHere is the relevant code (it fails on "SELECT @idTable = T.id...")... DECLARE @idTable BIGINT SELECT @idTable = T.id FROM sysobjects P JOIN sysobjects T ON P.parent_obj = T.id WHERE P.id = @@procid -- Get COLUMNS_UPDATED if update -- DECLARE @Columns_Updated VARCHAR(50) SELECT @Columns_Updated = ISNULL(@Columns_Updated + ', ', '') + name FROM syscolumns WHERE id = @idTable AND CONVERT(VARBINARY,REVERSE(COLUMNS_UPDATED())) & POWER(CONVERT(BIGINT, 2), colorder - 1) > 0