我如何向用户授予执行准备好的语句的权限?
How can i grant execute on a prepared statment to an user?
我必须在 workbench 中执行准备好的语句,以没有权限的用户身份登录:
EXECUTE PreparedStatmentName USING @a, @b;
我试过:
GRANT EXECUTE ON PreparedStatmentName TO 'User';
但它是“非法 GRANT/REVOKE 命令。”
(抱歉我的英语不好)
EXECUTE privilege实际上是为了执行存储过程,而不是准备语句。
除了 SQL 语句本身所需的权限外,不需要任何权限来准备或执行 SQL 语句。
换句话说,如果用户对给定的 table 具有 SELECT 权限,则该用户可以 运行 一个 SQL 查询来执行该操作 SELECT,无论是直接 运行 SELECT 还是使用 PREPARE 和 EXECUTE。
我必须在 workbench 中执行准备好的语句,以没有权限的用户身份登录:
EXECUTE PreparedStatmentName USING @a, @b;
我试过:
GRANT EXECUTE ON PreparedStatmentName TO 'User';
但它是“非法 GRANT/REVOKE 命令。”
(抱歉我的英语不好)
EXECUTE privilege实际上是为了执行存储过程,而不是准备语句。
除了 SQL 语句本身所需的权限外,不需要任何权限来准备或执行 SQL 语句。
换句话说,如果用户对给定的 table 具有 SELECT 权限,则该用户可以 运行 一个 SQL 查询来执行该操作 SELECT,无论是直接 运行 SELECT 还是使用 PREPARE 和 EXECUTE。