Я хочу создать пользователей через процедуру в другой базе данных через ссылку на базу данных. Я получаю сообщение об ошибке при выполнении процедуры. Вот код, который я использовал.
create or REPLACE PROCEDURE hostname
(host_name in varchar2,user_name in VARCHAR2, pass_word in VARCHAR2,
table_space in varchar2,pro_file in varchar2)
as
db_link_name varchar2(30);
begin
select db_link into db_link_name from all_db_links where host=host_name;
EXECUTE IMMEDIATE 'dbms_utility.exec_ddl_statement@'||db_link_name||('CREATE USER '||user_name||' IDENTIFIED BY '||pass_word||'
DEFAULT TABLESPACE '||table_space||' PROFILE '|| pro_file||' ACCOUNT UNLOCK');
EXECUTE IMMEDIATE 'dbms_utility.exec_ddl_statement@'||db_link_name||
('GRANT CONNECT,RESOURCE,EXECUTE_CATALOG_ROLE,Create table,create session,create view,create sequence,create procedure,create job,create synonym TO '||user_name);
end;
/
execute hostname('orcl1','rahul1','rahul','users','default');
Ошибка: ORA-00900: недопустимый оператор SQL ORA-06512: в «SYS.HOSTNAME», строка 6 ORA-06512: в строке 1
00900. 00000 - «недопустимый оператор SQL»
* Причина:
*Действие: