我有一个需要添加授权选项的用户。我尝试了以下命令;
grant myrole to myuser with grant option
但是我收到了错误;
Dynamic SQL Error SQL error code = -104 Token unknown - line 1, column 29 grant
我也尝试撤销角色,然后再次授予角色。但是我得到了同样的错误。
我只能在没有授权选项的情况下授予角色。我已经检查了手册中的正确语法,但我看不出我做错了什么。
答案 0 :(得分:4)
GRANT
子句with grant option
仅用于特权,而不用于角色。对于角色,您需要使用with admin option
。
GRANT <role_granted>
TO <role_grantee_list> [WITH ADMIN OPTION]
[{GRANTED BY | AS} [USER] grantor]
可选的
WITH ADMIN OPTION
子句允许用户列表中指定的用户授予指定给其他用户的角色。
答案 1 :(得分:2)
Granting privileges似乎允许使用'with grant option'
GRANT {
<privileges> ON [TABLE] {tablename | viewname}
| EXECUTE ON PROCEDURE procname
}
TO <grantee_list>
[WITH GRANT OPTION]} | [{GRANTED BY | AS} [USER] grantor];
但是授予角色似乎不允许'with grant option'。它有'带有管理员选项',这就是为什么我假设错误发生一旦遇到'grant'这个词而不是'with'后面的'admin'。
GRANT <role_granted>
TO <role_grantee_list> [WITH ADMIN OPTION]
[{GRANTED BY | AS} [USER] grantor]