Rumah >pangkalan data >tutorial mysql >Mengapa Skrip PHP Saya Gagal Mencipta Acara MySQL dengan 'Ralat Sintaks'?

Mengapa Skrip PHP Saya Gagal Mencipta Acara MySQL dengan 'Ralat Sintaks'?

DDD
DDDasal
2024-11-16 17:12:03730semak imbas

Why Does My PHP Script Fail to Create a MySQL Event with a

Ralat Acara Mysql Menggunakan PHP: Menyelesaikan Isu Sintaks

Apabila cuba mencipta Acara MySQL menggunakan skrip PHP, pengguna mungkin menghadapi ralat berikut:

You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'DELIMITER' at line 1

Untuk menyelesaikan ralat ini apabila memulakan Acara MySQL melalui PHP:

  1. Ubah suai SQL Query:

    • Ganti DELIMITER | dengan DELIMITER $$.
  2. Pastikan Penjadual Acara Didayakan:

    • Sebelum mencipta acara, pastikan penjadual acara dihidupkan dengan melaksanakan: SET GLOBAL event_scheduler = HIDUP;
  3. Gunakan Sintaks yang Betul:

    • Sintaks yang betul untuk mencipta acara menggunakan PHP hendaklah sebagai berikut:

      $sql = "CREATE EVENT myevent21222
              ON SCHEDULE EVERY 5 MINUTE STARTS '2016-01-01 00:00:00'
              ON COMPLETION PRESERVE
              DO
                BEGIN
                  UPDATE `team` SET `reg` = '0' WHERE `id` = '1';
                END
              DELIMITER $$";

Alternatif kepada Pengubahsuaian Data Berjadual:

Jika fungsi yang diingini adalah untuk menukar data dalam pangkalan data selepas selang masa tertentu berikutan tindakan pengguna, pendekatan alternatif ialah menggunakan gabungan pencetus PHP dan MySQL. Ini membolehkan pengubahsuaian data berlaku secara automatik apabila operasi pangkalan data tertentu, seperti sisipan atau kemas kini.

Atas ialah kandungan terperinci Mengapa Skrip PHP Saya Gagal Mencipta Acara MySQL dengan 'Ralat Sintaks'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn