sql >> Databáze >  >> RDS >> Mysql

Příliš mnoho automatických přírůstků s ON DUPLICATE KEY UPDATE

Nemyslím si, že existuje způsob, jak obejít toto chování INSERT ... ON DUPLICTE KEY UPDATE .

Můžete však zadat dva příkazy, jeden UPDATE a jeden INSERT , v jedné transakci :

START TRANSACTION ;

UPDATE pages
SET etc = 'randomness'
WHERE name = 'bob' ;

INSERT INTO pages (name, etc)
SELECT 
      'bob' AS name
    , 'randomness' AS etc 
FROM dual 
WHERE NOT EXISTS
      ( SELECT *
        FROM pages p
        WHERE p.name = 'bob'
      ) ;

COMMIT ;


  1. Jak se připojit k MySQL a Postgres v živém materializovaném zobrazení

  2. Proč některá připojení mysql vybírají stará data z databáze mysql po odstranění a vložení?

  3. Jak nahrát více obrázků v laravel

  4. Jak mohu ignorovat ampersandy ve skriptu SQL spuštěném z SQL Plus?