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

Bisakah saya memperbarui baris yang baru saja ditambahkan menggunakan pemicu MySQL?

Seperti yang dikatakan zerkms, Anda perlu mengubah pembatas. Tetapi karena Anda hanya menggunakan 1 baris kode, Anda tidak memerlukan BEGIN dan END. Dan dengan begitu, Anda juga tidak perlu mengubah pembatas

CREATE TRIGGER `default_order_value` 
AFTER INSERT ON `clusters` 
FOR EACH ROW  
    UPDATE `clusters` SET `order` = NEW.id WHERE `id` = NEW.id; 

Karena Anda mendapatkan kesalahan, Anda tidak dapat memperbarui baris, saya sarankan yang berikut:

JANGAN lakukan kueri pembaruan sama sekali. Pada default nilai pesanan =nilai ID. Jadi ketika nilai pesanan berubah, Anda dapat memperbaruinya dengan benar.

Jika Anda meminta data dengan php, lakukan sesuatu seperti ini:

$order = $row['order'];
if ($order == '')
    $order = $row['id'];

Setelah Anda perlu memperbaruinya, Anda mendapatkan nilai yang benar.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. String UTF-8 dalam database MySQL menjadi kacau setelah perubahan konfigurasi

  2. mysqli multi_query diikuti oleh query

  3. Memproses data dalam jumlah besar dalam PHP tanpa batas waktu browser

  4. permata mysql2 dikompilasi untuk perpustakaan klien mysql yang salah

  5. Bagaimana cara menulis fungsi mysql dengan nama tabel dinamis?