Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Terlalu banyak peningkatan otomatis dengan ON DUPLICATE KEY UPDATE

Saya tidak berpikir ada cara untuk melewati perilaku INSERT ... ON DUPLICTE KEY UPDATE ini .

Namun Anda dapat menempatkan dua pernyataan, satu UPDATE dan satu INSERT , dalam satu transaksi :

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Windows Batch Script untuk mencadangkan database MySQL lokal &hanya menyimpan N FOLDER terbaru dengan file cadangan

  2. konversi string tanggal ke bidang datetime mysql

  3. Dump File MySQL 5.6.10

  4. Python Pandas menulis ke sql dengan nilai NaN

  5. Cara Membaca File Log Biner MySQL (BinLog) dengan mysqlbinlog