SQL Loader,CSV文件中的注释

时间:2015-07-17 12:53:40

标签: csv sql-loader

我正在生成一个CSV文件,该文件将使用sqlldr读入数据库,并想知道我是否可以在文件中添加兼容的评论?

# Currently I am using comments of this format
# and I want to add some information about where the file came from

但是,sqlldr会将这些报告为rows not loaded due to data errors,这可能会让任何尝试调试导入过程的用户感到困惑。

我看过sqlldr documentation并没有提及任何有关评论的内容。 this question的答案还概述了CSV文件没有自己标准的注释,但标准是由读取文件的应用程序定义的(在本例中为sqlldr)。

是否有可与sqlldr一起使用的兼容评论类型?

1 个答案:

答案 0 :(得分:2)

我不相信sqlldr允许在每个数据中对数据进行注释,但是你可以通过在控制文件中指定一个只加载第一个行的with子句来绕过它。字符不等于'#'。请注意,'#'始终必须位于相同的位置,而不是在线上的任何位置。

编辑:我只是尝试过,它就像一个魅力。

数据文件:

# This is a comment in the data file
1|\a\ab\|do not "clean" needles|@
# This is a comment in the data file
2|\b\bg\|wall "69" side to end|@
# This is a comment in the data file

控制文件:

load data
infile 'x_test.dat'
into table X_TEST
when (1:1) <> '#'
fields terminated by "|" OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(
  col1,
  col2,
  col3
)