sql >> Database >  >> RDS >> Mysql

Revisies van relationele objecten op een efficiënte manier opslaan

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.



  1. Minimale waarden in kolommen vinden

  2. Google Cloud SQL met SSL van Compute Engine en/of extern netwerk

  3. Hoe kan ik deze SQL-query met geografische afstand Postgres compatibel maken?

  4. converteer string naar datum php