i think the Problem is the path to the dba_directory ORACLECLRDIR. If there is $ORACLE_HOME\bin\clr defiened - the system can not find the path at the Oracle PC. When i insert the complete path to the e:\oracle\bin\clr folder the system can copy the .dll, but after the copy the failure PLS-00302: component 'SAFE' must be declared appears. Can you tell me the reason why the system can't find the path $ORACLE_HOME\bin\clr.
I am tryting to executive a plsql procedure then i got the following error -
Aravind @ 9i >> execute dbms_system.set_trace_in_session(10, 8, true);
BEGIN dbms_system.set_trace_in_session(10, 8, true); END;
ERROR at line 1:
ORA-06550: line 1, column 19:
PLS-00302: component 'SET_TRACE_IN_SESSION' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
So as you suggested to re-deploying DBMS_CLR i try to execute the dbmsclr.plb scirpt then i am getting the following error -
Aravind @ 9i >> @$ORACLE_HOME/rdbms/admin/dbmsclr.plb
SP2-0310: unable to open file "/orcl/aravind/oracle9i/OraHome1/rdbms/admin/dbmsclr.plb"
Then i check default path of dbmsclr.plb, its not available there,
so is the only way to get dbmsclr.plb is to reinstall the software or is there any other way.
You are getting error due to missing component 'SET_TRACE_IN_SESSION' and not due to 'SAFE'. Even though the error number PLS-00302 is same, they are not related. 'SET_TRACE_IN_SESSION' has nothing to do with DBMS_CLR for sure.
By the way, DBMS_CLR will be found only in db 10gR2 and above.