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

Pemicu Berbasis Waktu MySQL

Ada banyak masalah dengan kode Anda:

  • Gunakan pembatas seperti yang dijelaskan dalam Mendefinisikan Tersimpan Program
  • tidak boleh ada S di akhir DAY di ON SCHEDULE EVERY 15 DAY seperti yang dijelaskan dalam BUAT Sintaks ACARA
  • Dokumentasi mengatakan "Seperti halnya rutinitas tersimpan, Anda dapat menggunakan sintaks pernyataan majemuk dalam klausa DO dengan menggunakan kata kunci BEGIN dan END", jadi BEGIN kata kunci harus ditambahkan setelah DO pertama
  • setiap pernyataan harus dipisahkan dengan titik koma
  • Sintaks SAAT mengatakan kode harus diapit di antara WHILE search_condition DO dan END WHILE
  • di INSERT , day adalah bidang:lampirkan di backticks, bukan dalam tanda kutip

Kode tetap :

DELIMITER $$$
CREATE EVENT autoDayInsert ON SCHEDULE EVERY 15 DAY DO BEGIN
    SET @dayCounter = 0;
    WHILE @dayCounter < 15 DO
        INSERT INTO appointmentDays(`day`) VALUES(NOW() + INTERVAL @dayCounter DAY);
        SET @dayCounter = @dayCounter +1;
    END WHILE;
END $$$
DELIMITER ;

Saya sarankan Anda membaca tautan yang saya berikan dalam jawaban saya. Di masa mendatang, lihat dokumentasi resmi jika Anda mengalami masalah:informasi yang diberikan akurat dan terkini, dan hampir selalu disertai dengan banyak contoh yang membantu memahami sintaks yang digunakan.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hapus informasi MySQL dalam tabel menggunakan pekerjaan Cron

  2. Apakah urutan kondisi dalam klausa WHERE memengaruhi kinerja MySQL?

  3. Tidak dapat memasukkan karakter Yunani dengan benar ke dalam database mysql

  4. Bagaimana cara mengetahui apakah pernyataan sql dieksekusi di java?

  5. Pilih rekaman berdasarkan meta