【发布时间】:2014-04-09 16:16:19
【问题描述】:
我尝试上传具有 30,000 行和 4 列的 3MB 非常小的 csv 文件。我花了一个多小时
cUrl = "jdbc:odbc:DSN; TYPE=FASTLOAD" ;
Connection conn = DriverManager.getConnection(cUrl, username, password);
String sql = "insert into Transactions(custID, transaction_date, amount, desc) values(?,?,?,?)";
PreparedStatement ps = conn.prepareStatement(sql);
for ( ... )
{
ps.setString(1, custID);
ps.setString(2, tran_date);
ps.setString(3, amount);
ps.setString(4, desc);
ps.addBatch();
}
ps.executeBatch();
addBatch 运行非常流畅。那些我到达ps.executeBatch(); 线的人永远需要它。上传一个包含 30,000 行的 3 MB csv 文件需要一个多小时。是不是应该是这样的
【问题讨论】: