0

我们创建了如下程序:

CREATE DEFINER= ftdinc@ %PROCEDURE get_all_dates(
in_product_id varchar(100), in_zip_code
varchar(100), in_max_delivery_date DateTime) .......等等。

调用 pas.get_all_dates('FK35', '10001','2013-09-09 00:00:00'); 错误 1142 (42000): SELECT 命令拒绝用户 'pas'@'%' 用于表 'pas.get_all_dates'

实际上我们没有用户通行证。我们只有 ftdinc 用户。

为什么它是用 pas 用户而不是 ftdinc 用户执行的。我们不明白。

请帮我

4

1 回答 1

0

使用错误中的信息,您尝试使用没有权限call的用户执行该过程,因此最简单但不是很安全的解决方案是:pas

GRANT ALL ON *.* TO 'pas'@'%';
FLUSH PRIVILEGES;

您有 2 个选择:

1)授予用户权限pas
2)使用用户ftdinc执行调用

于 2013-07-05T08:38:26.590 回答