我有一个txt文件,如下所示。第一machine_no
,第二emp_no
,第三shift_type
(1进入,3为出口),第四work_date
,第四是时间。如何在oracle中有条件地使用sqlldr加载数据
001,0000000021,01,2011/06/21,06:50,
001,0000000026,01,2011/06/21,14:00,
001,0000000018,01,2011/06/21,07:00,
001,0000000021,03,2011/06/21,14:00,
001,0000000018,03,2011/06/21,16:50,
001,0000000026,03,2011/06/21,16:55,
我想在表格中加载数据。该字段time1
有时间,如果 time_type
是1,并且该字段time2
有时间,如果time_type
是 3.请让我知道如何在控制文件中有这个。
在此先感谢您的帮助......麦基。
下面是TXT文件和表格在Oracle。
如下表:
desc data_trans;
Name Null? Type
------------------------------- -------- ----
MACHIAN VARCHAR2(4)
YEAR NUMBER(4)
MONTH VARCHAR2(2)
WDAY VARCHAR2(2)
TIME1 VARCHAR2(5)
TIME2 VARCHAR2(5)
TIME3 VARCHAR2(2)
SHIFT_NO NUMBER(1)
TIME_TYPE NUMBER(1)
WORK_DATE DATE
EMP_NO VARCHAR2(10)
对不起,我以前没有提到我使用Oracle 8i,我不能使用外部表。我将数据加载到oracle的tmp表中,这就是它的外观。 – Macky
OK,在这种情况下,你看到的这篇文章:http://www.oracle-base.com/articles/8i/DIYDynamicViews.php – Ollie
你应该尽量让你到北美经销商从8i的升级,它已经不再支持了很长时间。 – Ollie