Rumah > pangkalan data > tutorial mysql > Mengapa Saya Mendapat \'Ralat: Akses Ditolak; anda memerlukan keistimewaan SUPER untuk operasi ini\' Apabila Mencipta Fungsi dalam phpMyAdmin?

Mengapa Saya Mendapat \'Ralat: Akses Ditolak; anda memerlukan keistimewaan SUPER untuk operasi ini\' Apabila Mencipta Fungsi dalam phpMyAdmin?

Susan Sarandon
Lepaskan: 2024-10-31 17:13:30
asal
1079 orang telah melayarinya

Why Am I Getting

Ralat: Akses Ditolak: Mencipta Fungsi dalam phpMyAdmin

Apabila melaksanakan pertanyaan SQL untuk mencipta fungsi dalam phpMyAdmin, pengguna mungkin menghadapi "Ralat: Akses ditolak; anda memerlukan keistimewaan SUPER untuk operasi ini". Ralat ini berpunca daripada keperluan keistimewaan.

Mengenal pasti Masalah

Dua isu utama boleh menyebabkan ralat ini:

  1. Tiada Keistimewaan CREATE ROUTINE: MySQL 5.0.3 dan ke atas memerlukan keistimewaan CREATE ROUTINE untuk melaksanakan CREATE PROCEDURE dan CREATE FUNCTION pertanyaan.
  2. DEFINER Sekatan: Atribut DEFINER sendiri menentukan prosedur atau fungsi yang disimpan. Jika DEFINER ditetapkan kepada pengguna terhad, pemanggil mesti mempunyai keistimewaan SUPER untuk mencipta objek.

Penyelesaian

Alih keluar Atribut DEFINER :

Untuk menghapuskan keperluan untuk keistimewaan SUPER, alih keluar atribut DEFINER daripada pertanyaan SQL. Ini memberikan pemilikan fungsi kepada pengguna semasa.

<code class="sql">CREATE FUNCTION `f_calc_gst`(p_ht decimal(15,3), p_province varchar(2)) RETURNS varchar(255) CHARSET utf8
...</code>
Salin selepas log masuk

Tetapkan Medan Pembatas dalam phpMyAdmin:

Sebelum melaksanakan pertanyaan yang diubah suai, pastikan medan pembatas adalah tetapkan dengan betul di bawah kotak teks SQL dalam phpMyAdmin.

Nota Tambahan:

  • Pengelogan binari mungkin memerlukan keistimewaan SUPER.
  • Sebaik sahaja fungsi dicipta, pengguna boleh memberikan keistimewaan khusus kepada pengguna atau peranan lain.

Atas ialah kandungan terperinci Mengapa Saya Mendapat \'Ralat: Akses Ditolak; anda memerlukan keistimewaan SUPER untuk operasi ini\' Apabila Mencipta Fungsi dalam phpMyAdmin?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan