将文件中的数据加载到 hsqldb
Posted
技术标签:
【中文标题】将文件中的数据加载到 hsqldb【英文标题】:load data from file into hsqldb 【发布时间】:2014-05-31 19:02:05 【问题描述】:如何 表中? 我有这个语句在 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)
任何想法 谢谢
【问题讨论】:
【参考方案1】:LOAD DATA
是对hsqldb无效的MySQL命令,但是可以使用临时表并更改源:
-- 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
【讨论】:
以上是关于将文件中的数据加载到 hsqldb的主要内容,如果未能解决你的问题,请参考以下文章