I would like to get some feedback on a table design to capture user audit information that can be queried by users. An IT manager is insisting that the design be table-name, action, timestamp, user-id, program-name, pre-image varchar(999) and post-image(999). The pre-image and post-image columns will contain all fields for each table changed but the data must be formatted. This new table would capture data for 22 tables for both online and batch program changes and batch can update the same record multiple times every evening. Several of us have proposed creating history tables for the 22 tables that could be queried by column name without having to format the data but this is being met with resistance. One issue is we know there will be table changes on some of these tables in the future and that would make the information in the quasi audit/history table have different parsing values plus the formatting for the fields would need to be changed. Would history tables be more viable, does anyone have any other suggestions?