我有很多日志文件,我想将它们插入表(oracle)。 最好的做法是什么?
所有日志如下所示。我的目录中有很多这样的文件。
11/04/2017 12:00:02 11959 trt_ret_tp START Chargement des fichiers HREREC (trt_ret_tp)
11/04/2017 12:00:02 11959 trt_ret_tp Aucun fichier ▒ traiter
11/04/2017 12:00:02 11959 trt_ret_tp Mise a jour de la date de dernier recouvrement
11/04/2017 12:02:42 11959 trt_ret_tp STOP Chargement des fichiers HREREC (trt_ret_tp)
答案 0 :(得分:0)
您需要循环来迭代所有树文件夹,然后您需要读取日志文件的每一行,然后为该行创建sql INSERT语句。这应该很容易,我没有一个Oracle实例来做一个例子,但尝试用这个提示来做。
答案 1 :(得分:0)
此解决方案是否正确?
创建表格
CREATE TABLE "LOG_GAM_NOY"
( "DATE", DATE NOT NULL ENABLE,
"TIME", VARCHAR2(8) DATE NOT NULL ENABLE,
"NUM_OF_PROCESS" NUMBER(8),
"SHELL" VARCHAR2(20 BYTE),
"EVENEMENT" VARCHAR2(20 BYTE),
"LIBELE" VARCHAR2(200 BYTE),
) ;
控制文件
OPTIONS
LOAD DATA
INFILE /donnees/gam/log/*.log
INFILE /donnees/noyau/log/*.log
REPLACE INTO TABLE LOG_GAM_NOY
FIELDS TERMINATED BY X’9’
TRAILING NULLCOLS
(DATE,TIME,NUM_OF_PROCESS,SHELL,EVENEMENT,LIBELE)
)