3
我正在通過SQL * Loader將文本文件導入到Oracle表中,但我不想給出文件的具體名稱,我只想導入.txt文件擴展文件。 看看下面的代碼:如何在下面的查詢中使用「like」命令
create or replace
PROCEDURE EXT_TABLE
AS
A1 NUMBER ;
L_QUERY VARCHAR2(1000) := NULL;
L_DROP VARCHAR2(10000) := NULL;
BEGIN
EXECUTE IMMEDIATE 'CREATE TABLE IMPORT_TEST
(EMP_ID NUMBER (10)
)
ORGANIZATION EXTERNAL
(TYPE ORACLE_LOADER
DEFAULT DIRECTORY IMPORT
ACCESS PARAMETERS
(RECORDS DELIMITED BY NEWLINE
FIELDS TERMINATED BY '',''
MISSING FIELD VALUES ARE NULL
)
LOCATION ('file with .txt extension')
)reject limit unlimited';
L_QUERY:= 'INSERT INTO MPRN SELECT * FROM IMPORT_TEST';
EXECUTE IMMEDIATE L_QUERY;
L_DROP := 'drop table IMPORT_TEST ';
execute immediate L_DROP;
--execute immediate 'DROP IMPORT_TEST';
commit;
END EXT_TABLE;
在位置,LOCATION ('file with .txt extension')
,我不想給文件的名稱在目錄中只有一個txt文件是存在的。我不想使用IN
參數。我只想從目錄中搜索。用戶將運行該程序,並自動導入txt文件,而無需手動選擇。
你會在任何時候在那個目錄中只有一個文本文件? – Mihai 2014-10-03 09:31:09
如果我記得很清楚,用PL/SQL列出目錄中的文件相對困難。如果這是「一次性」的事情,也許你可以簡單地將它包裝在shell腳本中? – 2014-10-03 09:55:00
@mihai yaa .only目錄中的txt文件 – y2j 2014-10-03 10:00:34