H2数据库-CSVREAD-跳过将csv文件的头行加载到数据库中

H2数据库-CSVREAD-跳过将csv文件的头行加载到数据库中,csv,h2,Csv,H2,我在java应用程序中使用H2DB。我想将.csv文件加载到数据库。此文件包含列标题作为文件的第一行。因此,当通过CSVREAD命令将文件加载到DB中时,H2也试图解析第一行,因此失败 因此,如何跳过加载第一行。下面是我用于将文件加载到数据库的查询: "CREATE TABLE TEST (CIRCLE VARCHAR_IGNORECASE(50), MSISDN VARCHAR_IGNORECASE(50), PORT_IN_DATE TIMESTAMP, OPERATOR VARCHAR_I

我在java应用程序中使用H2DB。我想将.csv文件加载到数据库。此文件包含列标题作为文件的第一行。因此,当通过
CSVREAD
命令将文件加载到DB中时,H2也试图解析第一行,因此失败

因此,如何跳过加载第一行。下面是我用于将文件加载到数据库的查询:

"CREATE TABLE TEST (CIRCLE VARCHAR_IGNORECASE(50), MSISDN VARCHAR_IGNORECASE(50), PORT_IN_DATE TIMESTAMP, OPERATOR VARCHAR_IGNORECASE(255), PRODUCT_TYPE VARCHAR_IGNORECASE(255), PORT_ID VARCHAR_IGNORECASE(255)) AS SELECT * FROM CSVREAD('src/test/resources/test.csv', "
该函数支持带列标题和不带列标题的文件。如果文件包含列标题,则不要在函数中提供列列表,例如:

SELECT * FROM CSVREAD('test.csv');
SELECT * FROM CSVREAD('data/test.tsv', null, 'rowSeparator=' || CHAR(9));
SELECT * FROM CSVREAD('test2.csv', 'ID|NAME', 'charset=UTF-8 fieldSeparator=|');
如果文件不包含列标题,则在函数调用中提供列列表,例如:

SELECT * FROM CSVREAD('test.csv');
SELECT * FROM CSVREAD('data/test.tsv', null, 'rowSeparator=' || CHAR(9));
SELECT * FROM CSVREAD('test2.csv', 'ID|NAME', 'charset=UTF-8 fieldSeparator=|');

你问题中的陈述被截断了;你能补充一下缺失的部分吗?如果可能,请添加换行符,以便于阅读。对于
tsv
文件
fieldSeparator
应该是
char(9)
而不是
rowselector
,因此
SELECT*FROM CSVREAD('data/test.tsv',null,'fieldSeparator='| char(9))
对于tsv是正确的。
|
在该字段分隔符中是什么意思?