我正在使用opencsv库将oracle数据转储到csv文件中。
我正在使用以下代码:
private void generateCSVFile() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:XE";
Connection con = DriverManager.getConnection(url, "system", "admin");
PreparedStatement ps = con.prepareStatement("select * from T_USER_DETAILS",ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_UPDATABLE,ResultSet.HOLD_CURSORS_OVER_COMMIT);
ResultSet rs = ps.executeQuery();
if(rs.next()){
System.out.println("Name = "+rs.getString(2));
}
rs.beforeFirst();
CSVWriter writer = new CSVWriter(new FileWriter("Test.csv"),'\t');
writer.writeAll(rs, true);
JOptionPane.showMessageDialog(null, "CSV Created!","Success!",JOptionPane.INFORMATION_MESSAGE);
} catch (Exception ex) {
Logger.getLogger(BackupDB.class.getName()).log(Level.SEVERE, null, ex);
}
}
但是,当我执行此代码时。已创建csv文件,但该文件中没有内容。 (注意结果集在控制台中打印2列值。)
先谢谢。
答案 0 :(得分:3)
你可以尝试一些事情:
List<String[]test>
替换结果集来试一试。如果它的工作意味着你的结果集有问题。