در PostgreSQL دستور UPDATE ردیف را بازنویسی نمی‌کند؛ نسخه‌ی جدیدی می‌نویسد و نسخه‌ی قبلی را تمام‌شده علامت می‌زند. هر کوئری با یک snapshot تعیین می‌کند کدام نسخه‌ها را می‌تواند ببیند. هزینه‌اش نسخه‌های مرده‌ای است که VACUUM باید بعداً پاک کند.