我们正在使用平面文件。但是如何跳过平面文件中的最后记录。
答案 0 :(得分:0)
您可以使用SKIP子句跳过标题行,但要跳过必须使用WHEN子句的最后记录。通常,您的尾随记录(最后记录)将与文件中的其他记录不同,并且应该有一个指示符来指定这是一个预告片记录。您需要在控制文件中构造这样的条件,以使此条件不满意。
以下是有关WHEN子句的Oracle文档。
http://docs.oracle.com/cd/B14117_01/server.101/b10825/ldr_control_file.htm#i1005657
以下是有条件加载的一些示例。
答案 1 :(得分:0)
如果您的尾记录始终以T开头,请在您的ctl文件中使用以下内容! Haven在一段时间内对它进行了测试,但是在我最后一次加载临时表时,我一直在为我工作。
LOAD DATA
INFILE 'file.dat' BADFILE 'file.bad' DISCARDFILE 'file.dis'
APPEND
INTO TABLE tablename
-- This will skip the tail record
WHEN (01) <> 'T'
(
column names);
答案 2 :(得分:0)
您的原始帖子需要更多详细信息但是为了完整性,控制文件选项子句有一个LOAD = n选项,告诉sqlldr要加载多少行。如果您有100行并且不想加载最后5行,请指定LOAD = 95。