create or replace procedure cnav_unlock_table ( cnav_lockId IN OUT number ) IS v_cursor number; v_command varchar2(2000); v_rows number; BEGIN if (cnav_lockId is null) then cnav_lockId := -1; return; end if; v_cursor := DBMS_SQL.OPEN_CURSOR; v_command := 'update table_lock set unlock_date=sysdate,'; v_command := v_command || 'last_modified_by=5772,last_modified_date=sysdate'; v_command := v_command || ' where lock_id='||to_char(cnav_lockId); DBMS_SQL.PARSE(v_cursor,v_command,DBMS_SQL.V7); v_rows := DBMS_SQL.EXECUTE(v_cursor); DBMS_SQL.CLOSE_CURSOR(v_cursor); END cnav_unlock_table; / show errors; grant execute on cnav_unlock_table to public;