java - 将文件中的数据加载到 hsqldb 中

标签 java mysql file hsqldb

如何将文件中的数据加载到 hsqldb 表中? 我有这个语句在 mysql 中可以正常工作,我想将其更改为适用于 hsqldb。

String sqlLoadkey ="load data local infile " +"'E:/Thesis/ThesisWork/outdata/keywords.txt'"+ " \n" +
            "   into table "+ "keywordsTable" +"(keywords)";
         stmt1.executeUpdate(sqlLoadkey);

这是我遇到的异常

java.sql.SQLSyntaxErrorException: unexpected token: LOAD
at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source)
at org.hsqldb.jdbc.JDBCStatement.executeUpdate(Unknown Source)
at ThesisCode.ReductionTry.main(ReductionTry.java:67)
Exception in thread "main" java.lang.NullPointerException
at ThesisCode.ReductionTry.main(ReductionTry.java:138)

任何想法 谢谢

最佳答案

LOAD DATA 是一个 MySQL 命令,对 hsqldb 无效,但您可以使用临时表并更改源:

-- remporary table
create table yourdb.tmp_textfiletable (col1 varchar(250));  

set table yourdb.tmp_textfiletable 
    source "'E:/Thesis/ThesisWork/outdata/keywords.txt';ignore_first=false";

-- And insert it in your normal table:

INSERT INTO yourdb.keywordsTable (keywords) 
    select Col1 from yourdb.tmp_textfiletable;

-- after that you can drop it

drop table yourdb.tmp_textfiletable

关于java - 将文件中的数据加载到 hsqldb 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23973802/

相关文章:

file - 从文件中读取 n 个字节的文本

bash - 从重命名脚本中排除文件类型

mysql - SQL查询需要很长时间才能响应

java - 输入监听器 Java [Android Studio]

java - 在整个应用程序中全局捕获键盘组合以显示 Java 中隐藏的 JDialog

java - 在不覆盖 hashCode() 的情况下删除重复项

Javascript/Jquery 发布和获取?

sql - 哪种排序规则最适合 MySQL 中的数据类型 INT?

windows - 在 Windows cmd 中查找两个文本文件之间的交集

java.lang.ClassNotFoundException : org. springframework.boot.SpringApplication Maven