2012-05-03 68 views
0

我用java做批量插入到一個MySQL表的數量:MySQL的批量插入:插入得到線

cnx = lconnect.openConnection(); 
mStatement = cnx.createStatement(); 
boolean firstTime = true; 
PreparedStatement preparedStatement = null; 

preparedStatement = cnx.prepareStatement(strQuery); 
preparedStatement.setString(param1); 
preparedStatement.setString(param2); 
.... 
preparedStatement.addBatch(); 
preparedStatement.setString(param1); 
preparedStatement.setString(param2); 
preparedStatement.addBatch(); 
preparedStatement.setString(param1); 
preparedStatement.setString(param2); 

preparedStatement.execute(); 

有沒有辦法真正瞭解插入的行數?

我想我的一段代碼它正在工作(?)的數據庫中的行數與預計要插入的行數不匹配,所以我想我可能有y插入問題。

回答

2

你必須調用executeBatch()。返回的數組包含您想要的信息。

從JavaDoc的:

返回: 含有在批處理每個命令的一個元素的更新計數陣列。數組中的元素按照 命令的順序進行排序,其中命令添加到批處理中。

+0

Oups。我執行錯了。我確實注意到有一個executeBatch()。非常感謝。解決了我的問題,現在所有的線都被整理:)。謝謝 –

-2

使用PreparedStatement對象爲每個批次記錄:)