phpMyAdmin
 sql >> Teknologi Basis Data >  >> Database Tools >> phpMyAdmin

Kesulitan dalam menulis Stored Procedure di MYSQL

Seperti yang didokumentasikan dalam Mendefinisikan Program Tersimpan :

  • Jika Anda menggunakan mysql program klien untuk menentukan program tersimpan yang berisi karakter titik koma, masalah muncul. Secara default, mysql sendiri mengenali titik koma sebagai pembatas pernyataan, jadi Anda harus mendefinisikan ulang pembatas sementara untuk menyebabkan mysql untuk meneruskan seluruh definisi program yang disimpan ke server.

    Hal yang sama berlaku untuk phpMyAdmin.

  • Untuk mendefinisikan ulang mysql pembatas, gunakan delimiter perintah.

    Tidak semua versi phpMyAdmin mengenali delimiter memerintah; sebagai gantinya, seseorang dapat menggunakan Delimiter kotak masukan di bawah kotak masukan SQL:lihat Bagaimana cara menulis SP di phpMyAdmin (MySQL)?

  • Berikut ini adalah contoh fungsi yang mengambil parameter, melakukan operasi menggunakan fungsi SQL, dan mengembalikan hasilnya. Dalam hal ini, tidak perlu menggunakan delimiter karena definisi fungsi tidak mengandung ; . internal pembatas pernyataan:

    mysql> CREATE FUNCTION hello (s CHAR(20))
    mysql> RETURNS CHAR(50) DETERMINISTIC
        -> RETURN CONCAT('Hello, ',s,'!');
    Query OK, 0 rows affected (0.00 sec)
    

    Dalam kasus Anda, Anda dapat menghapus BEGIN ... END blok pernyataan majemuk dan hindari kebutuhan untuk mengubah pembatas.




  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. phpmyadmin tidak dapat membuka tampilan jelajah tabel

  2. Permintaan MySQL untuk mendapatkan rata-rata modal kolom?

  3. Instans EC2 berhenti berfungsi setelah membuat Gambar

  4. permintaan mysql menunjukkan hasil yang salah

  5. Cara menambah ukuran memori untuk phpmyadmin