Als dit puur voor 'archief'-doeleinden is, is een aparte tabel voor de revisies misschien beter.
Als u echter eerdere revisies gelijk moet behandelen met huidige revisies (bijvoorbeeld als u gebruikers de mogelijkheid wilt geven om een product terug te zetten naar een eerdere revisie), dan is het waarschijnlijk het beste om een enkele producttabel te behouden in plaats van gegevens te kopiëren. tussen tafels. Als u zich zorgen maakt over de prestaties, zijn dit waar indexen voor zijn.
U kunt een samengestelde primaire sleutel maken voor de producttabel, b.v. PRIMARY KEY (product_id, revision)
. Misschien een opgeslagen procedure om de huidige revisie te vinden—door de rij te selecteren met de hoogste revision
voor een bepaalde product_id
—zal handig zijn.