【发布时间】:2018-01-15 04:52:09
【问题描述】:
我很难想象一个执行此操作的好方法。正如您在下面的代码中所看到的,我正在遍历每一行并获取每个单元格的值。但是,当实际运行查询以将它们添加到表中时,如果一次可以输入一整行会更容易。尽管我不想为 excel 文档中的每一列创建单独的值,但有足够的列/可变性。有关如何更有效地运行它的任何想法?
for (int i=1; i<rowNum; i++) {
XSSFRow row = ws.getRow(i) ;
for (int j = 0; j<colNum; j++) {
XSSFCell cell = row.getCell(j) ;
String value = cell.getStringCellValue();
data[i][j] = value ;
System.out.println("the value is " + value);
stmt.executeUpdate("INSERT INTO databasetable VALUES(" + value + ")");
}
}
【问题讨论】:
-
没有真正遵循,因为代码为每个单元格(而不是每一行)插入了一条新记录。无论如何,teradata 可能会提供导入工具。需要java吗?
-
我宁愿导出为 CSV 并快速加载它 - 非常简单,在 64k+ 表上需要几秒钟。只是一个想法。