TYPEemployees_cursorISREFCURSORRETURNemp%ROWTYPE;--refcursor declarationCREATEORREPLACEPACKAGE"EMPLOYEES_TAPI"--package declarationEMPLOYEE_ID EMPLOYEES.EMPLOYEE_ID%TYPE,--record declarationTYPEEMPLOYEES_tapi_tab--nested table declarationemployee_nameVARCHAR2(30);--variable declarationFUNCTIONEMPTY...
to secure intellectual property written in PL/SQL is weak I also felt it was intriguing that Oracle has made it "easy" for anyone to understand how to recover source code in 9i and lower I also find it interesting that Oracle has shipped API's since the beginning of PL/SQL ...
The cursor..For loop approach for the update was calculated to take 53.7 years to complete! We institued the Insert into a dummy table append with nologging, and were able to complete the "update" in under 30 minutes. With nologging, if the system aborts, you simply re-run the 'update...
end Where_Clause; begin DBMS_Output.Put_Line(Stmt); declare nc integer := DBMS_Sql.Open_Cursor(Security_Level=>2); rc Sys_Refcursor; Dummy number; begin DBMS_Sql.Parse(nc, Stmt, DBMS_Sql.Native); for j in 1..Cols.Count() loop if Cols(j).Val is not null then DBMS_Sql.Bin...
my skills in Oracle. Thank you very much. Now some my thoughts on question. 1. It seems not very good idea to rely on granting access only to executable routines (not tables), because a lot of security-related logic may be enforced ...