ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Poitras Christian" <Christian.Poit...@ircm.qc.ca>
Subject Best way to insert thousands of records
Date Mon, 17 Dec 2007 22:00:33 GMT
Hi!
 
I would like to have your opinion on the fastest way to insert 300k rows
into a database.
 
Here are 2 ways I tought about.
Method 1 :
startBatch();
for (int i = 0; i < myObjects.size(); i++) {
  insert("MyObject.insert", myObjects.get(i));
}
executeBatch();
 
SqlMap
<insert id="insert">
INSERT INTO TABLE MyObject(prop1, prop2)
VALUES (#prop1.id#, #prop2.id#)
</insert>
 
 
Method 2 :
startBatch();
for (int i = 0; i < myObjects.size(); i += 30000) {
  insert("MyObject.insert", myObjects.subList(i, Math.min(i + 30000,
myObjects.size())));
}
executeBatch();
 
SqlMap
<insert id="insert">
INSERT INTO TABLE MyObject(prop1, prop2)
VALUES (#prop1.id#, #prop2.id#)
</insert>
 
 
Maybe I'm way off... So I would like to know about your experiences.
 
Thanks
Christian

Mime
View raw message