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

Membuat pemicu untuk memperbarui kolom sortir/urutan

Saya pikir solusinya adalah menjadikan ini pemicu sebelum dan memperbarui catatan yang disisipkan sendiri sebelum disisipkan.

Jadi

CREATE
/*!50017 DEFINER = 'admin'@'%' */
TRIGGER `trigger_liability_detail_after_insert` BEFORE INSERT ON `liability_detail` 
    FOR EACH ROW BEGIN
    DECLARE SortOrder INT;
    IF NEW.liability_category_id = 1 OR NEW.liability_category_id = 2 THEN

    SET NEW.seq = 1 + IFNULL((SELECT MAX(seq) FROM liability_detail WHERE analysis_id = new.analysis_id AND liability_category_id IN (1, 2)), 0);
    END IF;
    END;
$$

Itu adalah salin/tempel cepat, tetapi itu harus seperti itu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Memperbarui kolom sehingga berisi posisi baris

  2. Mendapatkan Resource id #3 Kesalahan di MySql

  3. Beberapa kueri UNION tidak berfungsi

  4. Cara menghubungkan Google Cloud SQL dengan C#

  5. Tidak dapat menginstal permata mysql di OS X