首頁 >資料庫 >mysql教程 >為什麼我在 phpMyAdmin 中建立函數時收到「存取被拒絕;此操作需要(超級)權限」?

為什麼我在 phpMyAdmin 中建立函數時收到「存取被拒絕;此操作需要(超級)權限」?

Susan Sarandon
Susan Sarandon原創
2024-11-02 10:40:02461瀏覽

Why Am I Getting

phpMyAdmin 中建立函數- 錯誤:存取被拒絕,您需要超級權限進行此操作

你想將一些MySQL 函數匯入phpMyAdmin中,但遇到了這個錯誤:「#1227 - 存取被拒絕;您需要超級權限進行此操作。」

為了解決此問題,請檢查以下事項:

超級權限

預設情況下,只有具有超級權限的使用者才能建立函數。如果您不是超級用戶,請向資料庫管理員申請該權限。

DEFINER 子句

如果函數的 DEFINER 子句指定為特定的用戶,則該用戶必須具有超級權限或 CREATE ROUTINE 權限。為了避免此權限要求,請從語句中刪除 DEFINER 子句。例如:

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

定界符

在 phpMyAdmin 中執行多行 SQL 查詢時,必須設定定界符欄位。在 SQL 文字方塊下方找到「定界符」字段,並輸入您要使用的定界符。例如,使用分號作為定界符:

<code class="sql">DELIMITER ;

CREATE FUNCTION `f_calc_gst`(p_ht decimal(15,3), p_province varchar(2)) RETURNS varchar(255) CHARSET utf8</code>

以上是為什麼我在 phpMyAdmin 中建立函數時收到「存取被拒絕;此操作需要(超級)權限」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn