我正在尝试将数据从文本表传输到普通表,其中数据最初来自txt文件。
我正在使用hsqldb
这就是我所做的。我没有错误或异常,但两个表都是空的。
String sqlkeywordcreate=new String ("CREATE TABLE keywordsTable " + " (k_id INTEGER IDENTITY not NULL PRIMARY KEY, keywords varchar(20))");
String sqlkeywordcreate1=new String ("CREATE TEXT TABLE tempKeywordsTable " + " (key varchar(20))");
stmt1.executeUpdate(sqlkeywordcreate);
stmt1.executeUpdate(sqlkeywordcreate1);
int numOfFields=di.getAllTerms();
String setTempKeywordsTable= new String ("set table "+"tempKeywordsTable"+ " source 'keywords.txt'");
//System.out.print(setTempKeywordsTable);
stmt1.executeUpdate( setTempKeywordsTable);
String insertkey= new String("INSERT INTO keywordsTable "+"(keywords)"+ " select key from tempKeywordsTable");
stmt1.executeUpdate(insertkey);
String dropTempKey= new String("drop table tempKeywordsTable");
//stmt1.executeUpdate(dropTempKey);
String sqlcreate=new String("CREATE TABLE "+ tableName +" (id INTEGER IDENTITY not NULL PRIMARY KEY)");
String sqlselect=new String("select k_id from keywordsTable");
请指导我并给我解决这个问题的想法。 感谢
答案 0 :(得分:1)
代码看起来正确。你应该在行后添加一个测试计数" set table tempKeywordsTable source"确保数据正确链接到TEXT表。如果有数据,其余的都可以使用。
代码无效的可能原因是keywords.txt文件的路径。该文件应与其余数据库文件位于同一目录中。