added option to not update columns that belong to a primary key