gpt4 book ai didi

java - CSV , JAVA 和 HSQLDB

转载 作者:行者123 更新时间:2023-11-30 05:51:11 25 4
gpt4 key购买 nike

我是 Java 编程的新手

我想问一下如何用 java 读取一个 CSV,然后将它上传到 HSQLDB。我一直在阅读并通过教程尝试解决方案的示例,但仍然没有真正理解。根据我的阅读,大多数人建议使用 OpenCSV 但是

  1. 我可以使用 opencsv 读取带定界符或嵌套定界符的 csv 文件吗?
    • opencsv 以不同的方式读取我的 *.csv 文件,在一列中包含多行。我希望它在一行中被阅读。

下面是例子

B03BB510001T2001,, child 咀嚼型多种维生素*,,""泛酸 7.5 毫克,"“对氨基苯甲酸 (PABA) 250MCG,”“叶酸 30MCG,”“生物素 50MCG,”“单硝酸硫胺素 + B6 + B12 6.6MG,”“胆碱 1MG,”“VIT A + VIT E + VIT C 引用文件,”"INOSITOL 1MG"",,""片剂,咀嚼片"",,,,B03,REGISTERED,75MG"

但我希望它显示在单行

  1. 如何将 csv 文件直接插入数据库?
    • 我目前必须使用 HSQLDB [独立服务器]。我是否必须使用第三方工具来执行此操作

**我只熟悉使用 PHP 和 MYSQL 而非 java &hsqldb 从 csv 读取和上传到数据库

希望你能给我建议和帮助。

最佳答案

这是我用来将数据加载到 HSQL per fredt 的示例脚本。您需要有一个持久性数据库才能使用文本表。如果您在数据库管理器中运行,则只需一次复制并执行一条语句。您还可以使用 sqltool(sql 脚本与数据库在同一文件夹中):

\i demotexttable.sql

这是demotexttable.sql

/* file.txt needs to be in the same folder as the database
first line of file is a header, others lines are data
--start file.txt
Col1|Col2|Col3
abcdef|My Company Name|0
--end file.txt
*/

--create the schema
create schema imp;

--create the normal table
create cached table imp.normalTable (
Col1 char(6),
Col2 nvarchar(200),
Col3 int
);

--create the table that table
create text table imp.textfiletable (
Col1 char(6),
Col2 nvarchar(200),
Col3 int
);

--setup the text file table
set table imp.textfiletable source "file.txt;ignore_first=true;fs=|";

--insert data from text file into the `normal` table
INSERT INTO imp.normalTable (Col1, Col2, Col3) select Col1, Col2, Col3 from imp.textfiletable;

--we are done with the text file table
drop table imp.textfiletable;
commit;

我在之前的帖子中发现了一些错误,我已经在这个最新的 mod 中清理了它们。

关于java - CSV , JAVA 和 HSQLDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13080991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com