【问题标题】:load data from file into hsqldb将文件中的数据加载到 hsqldb
【发布时间】:2014-05-31 19:02:05
【问题描述】:

如何将文件中的数据加载到 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)

任何想法 谢谢

【问题讨论】:

    标签: java mysql file hsqldb


    【解决方案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
    

    【讨论】:

      猜你喜欢
      • 2011-06-12
      • 2011-04-18
      • 2014-09-09
      • 1970-01-01
      • 2016-01-12
      • 2013-01-19
      • 2011-10-20
      • 2018-06-11
      • 1970-01-01
      相关资源
      最近更新 更多