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

Sebelum / sesudah memasukkan pemicu menggunakan bidang kenaikan otomatis

Satu-satunya cara yang saya temukan untuk mendapatkan nilai kenaikan baru bukanlah bentuk yang mewah. Saya berasumsi bahwa Anda memasukkan nilai baru, jadi itu seharusnya id maksimum + 1:

CREATE TRIGGER mytrigger BEFORE INSERT ON yourtable 
FOR EACH ROW BEGIN
SET NEW.thread_id = IF(
ISNULL(NEW.thread_id), 
(SELECT MAX(id) + 1 FROM yourtable), 
NEW.thread_id);
END;

Ini berhasil untuk kasus saya, jika NULL akan mendapatkan ID maks + 1, yang akan menjadi id baru.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menggabungkan beberapa baris di MySQL?

  2. Menyimpan data terstruktur dalam kolom database?

  3. Bagaimana cara mengimplementasikan pernyataan sql saya di Laravel?

  4. Masukkan stempel waktu ke dalam database + 7 hari

  5. Cara memesan berdasarkan FIELD dengan GROUP BY