java. Lang. outofmemoryerror: Java heap space error when executing millions of queries
•
Java
In my application, I need to perform millions of queries on MySQL database The code is as follows:
for (int i=0; i< num_rows ; i++) { String query2="select id from mytable where x='"+ y.get(i) "'"; Statement stmt2 = Con0.createStatement(ResultSet.TYPE_FORWARD_ONLY,ResultSet.CONCUR_READ_ONLY); ResultSet rs2 = stmt2.executeQuery(query2); ... // process result in rs2 rs2.close(); }
Where num_ Rows is about 2 million After the 600k loop, Java reports an error and exits:
What's wrong with my code? How can I avoid such mistakes?
Thank you in advance!
Solution
Declaration is not a good method here Try the following code:
PreparedStatement pre = Con0.prepareStatement("select id from mytable where x=?"); for (int i=0; i< num_rows ; i++) { pre.setString(1,y.get(i)); ResultSet rs2 = pre.executeQuery(); ... // process result in rs2 rs2.close(); pre.clearParameters(); } pre.close();
The content of this article comes from the network collection of netizens. It is used as a learning reference. The copyright belongs to the original author.
THE END
二维码