sql >> Database teknologi >  >> RDS >> Mysql

PHP MySQL indsætter data til flere tabeller

En løsning ville være at bruge Transaktioner , som gør det muligt at få "alt eller intet"-adfærd.

Ideen er følgende :

  • du starter en transaktion
  • du laver dine indsættelser/opdateringer
  • hvis alt er OK, forpligter du transaktionen; som vil gemme alt, hvad du gjorde under denne transaktion
  • hvis ikke, tilbagefører du transaktionen; og alt, hvad du gjorde i den, vil blive annulleret.
  • hvis du ikke forpligter og afbryde forbindelsen (hvis f.eks. dit PHP-script dør) , intet vil blive forpligtet, og det, du gjorde under den ikke-forpligtede transaktion, vil automatisk blive rullet tilbage.

For mere information, kan du tage et kig på 12.4.1. START TRANSAKTION, FORPLIGT OG TILBAGE Syntaks , til MySQL.


Bemærk, at transaktioner kun er tilgængelige for nogle DB-motorer :

  • MyISAM understøtter ikke transaktioner
  • InnoDB gør (det understøtter også fremmednøgler, for eksempel -- det er langt mere avanceret end MyISAM) .



  1. Hvordan får man slutningen på en dag?

  2. Udførelse af flere SQL-forespørgsler i én sætning med PHP

  3. Logisk replikationspartitionering med PostgreSQL 13

  4. I JavaFX hvordan man tilføjer combobox med data i tabelvisning