我正在使用oracle,并且希望创建一个属于另一个用户的特定表的索引,那么如何在不使用requete的情况下授予权限呢?
grant create any index 发布于 2016-10-10 19:34:45
grant index on [tablename] to [user]表所有者必须拥有哪些权限才能将表的create index授予其他用户,这取决于您的Oracle版本;请查看文档。
发布于 2016-10-10 19:18:02
如果您希望首先创建到另一个模式中的表的索引,则需要将system权限授予要用来创建de index的用户。
要在另一个模式中创建索引,您必须拥有系统的create index ANY ANY INDEX权限。
更多参考:https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_5010.htm
下面是SQL:
/*No tested*/
Grant create any index to user;发布于 2016-10-10 19:33:43
表所有者模式中的Create procedure
create or replace
procedure create_index(col_list varchar2, index_name varchar2) as
begin
execute immediate 'create index ' || index_name || ' on ' || 'PUT_TABLENAME_HERE'|| '(' || col_list || ')';
end;
GRANT EXECUTE ON table_owner.create_index TO user;打电话
begin
table_owner.create_index('ID','IDX1');
end;我觉得应该能行得通。
https://stackoverflow.com/questions/39956615
复制相似问题