Can We Create a Synonym On Trigger?
Answer Posted / avinash
I have created a trriger on CREATE,in which i m giving
execute immediate command for creating a synonym and using
dbms_job.submit .
it is not giving any error but its not creating any synonym
on the table...
code:
create or replace trigger bdesai.DR_CRA
after CREATE OR DROP on bdesai.schema
declare
l_str varchar2(255);
l_str1 varchar2(255);
l_job number;
begin
CASE ORA_SYSEVENT
WHEN 'CREATE' THEN
if (ora_dict_obj_type = 'TABLE') then
l_str := 'execute immediate "grant select on bdesai.'
||ora_dict_obj_name ||' to eqhub_developer";';
l_str1 := 'execute immediate "create or replace synonym
eqhub_developer'||'.'||ora_dict_obj_name ||' for
bdesai'||'.'||ora_dict_obj_name||'";';
DBMS_OUTPUT.PUT_LINE(replace(l_str,'"',''''));
DBMS_OUTPUT.PUT_LINE(replace(l_str1,'"',''''));
dbms_job.submit( l_job, replace(l_str,'"','''') );
dbms_job.submit( l_job, replace(l_str1,'"','''') );
END IF;
WHEN 'DROP' THEN
if ( ora_dict_obj_type = 'TABLE') then
l_str := 'execute immediate "revoke select on bdesai.'
||ora_dict_obj_name ||' from eqhub_developer";';
l_str1 := 'execute immediate "drop synonym
eqhub_developer'||'.'||ora_dict_obj_name||'";';
DBMS_OUTPUT.PUT_LINE(replace(l_str,'"',''''));
DBMS_OUTPUT.PUT_LINE(replace(l_str1,'"',''''));
dbms_job.submit( l_job, replace(l_str,'"','''') );
dbms_job.submit( l_job, replace(l_str1,'"','''') );
END IF;
END CASE;
end;
/
| Is This Answer Correct ? | 5 Yes | 1 No |
Post New Answer View All Answers
What do you understand by concurrent programs?
What do you understand by a set of books?
Is soa a part of oracle fusion middleware?
What is oracle soa suite and what are its different components?
Tell me how to debug the report?
What is count(*) from po_vendors(any table)?
A program must be written which accepts date parameter. The date parameter will accept data in the format DD/MM/YYYY. This data has to be validated and post validation, the following details have to be displayed for this date parameter 1. Input date must be defaulted to sysdate, It can be overridden by any other date. 2. Financial year should be displayed for this date parameter. Eg: If the input date is 30/11/2010, the financial year must be displayed as 1. From Date : 01-Aprr-2010 To Date: 31-Mar-2011 3. Calendar year and Calendar month must also be displayed. 4. The next payment cycle (say for EB), must be displayed based on this date parameter. 5. The previous payment must also be displayed based on this date.
please any one provide the oracle erp technical interview questions on modules(PO,AP,AR,INV,GL,OM)wise to my mail id..narendra_609@yahoo.co.in
is it possible to run the interface without using oracle apps?
can we get profile values in report without using user exists is it possible how?
what are the different transaction clauses in AR?
how do you describe O2C along with tables
What is oracle soa suite?
What do you understand by soa and what are the benefits of using this architecture?
How can you achieve loose coupling in soa framework?