虽然localhost具有执行权限,但是当我在Web应用程序中运行查询时,我收到的错误如下。我所做的通常解决了这个论坛和其他论坛中其他用户的问题,但由于某些原因,除非我遗漏了某些东西,否则我的解决方案不会解决。
注意:当我在navicat或其他任何地方运行相同的查询时,它可以正常工作。
还有什么可以解决这个问题吗?
由于
QUERY:
SELECT
get_balance('$deadline', '$id') AS Balance,
allow_submission('$id', '$term') AS Over
FROM dual
错误:
execute command denied to user 'readonlyuser'@'localhost' for routine 'mydb.allow_submission'
我的内容: 在Navicat GUI和Linux终端中root
和superuser
。
GRANT EXECUTE ON PROCEDURE mydb.allow_submission TO 'readonlyuser'@'localhost';
答案 0 :(得分:5)
当您将参数传递给allow_submission
时,我认为它是一个函数,而不是一个过程。
试试这个:
GRANT EXECUTE ON FUNCTION mydb.allow_submission TO 'readonlyuser'@'localhost';