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

SQL - JIKA ADA UPDATE ELSE INSERT INTO

  1. Buat UNIQUE kendala di subs_email . Anda kolom, jika belum ada:

    ALTER TABLE subs ADD UNIQUE (subs_email)
    
  2. Gunakan INSERT ... ON DUPLICATE KEY UPDATE :

    INSERT INTO subs
      (subs_name, subs_email, subs_birthday)
    VALUES
      (?, ?, ?)
    ON DUPLICATE KEY UPDATE
      subs_name     = VALUES(subs_name),
      subs_birthday = VALUES(subs_birthday)
    

Anda dapat menggunakan fungsi VALUES(col_name) dalam klausa UPDATE untuk merujuk ke nilai kolom dari bagian INSERT dari INSERT ... PEMBARUAN KUNCI ONDUPLICATE - dev.mysql.com

  1. Perhatikan bahwa saya telah menggunakan placeholder parameter sebagai pengganti string literal, sebagai salah satu benar-benar harus menggunakan pernyataan berparameter untuk bertahan dari serangan injeksi SQL .


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kinerja tampilan MySql

  2. tambahkan kolom ke tabel mysql jika tidak ada

  3. Tipe data MySQL mana yang digunakan untuk menyimpan nilai boolean?

  4. Terhubung ke mysql di Amazon EC2 dari server jauh

  5. Bagaimana cara mengubah semua tabel dari MyISAM menjadi InnoDB?