import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class TestSQL {
public TestSQL() {
try {
Class.forName ("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection ("jdbc:mysql://10.0.3.165:3306/test", "user", "passwd");
long t0=System.nanoTime();
PreparedStatement ps=conn.prepareStatement("insert into TABLE values (?,?,?,?,?)");
PreparedStatement d_ps=conn.prepareStatement("delete from TABLE where id = ?");
System.out.println("INIT PS: ");
System.out.println(((double)System.nanoTime()-t0)/1000D);
t0=System.nanoTime();
StringBuilder sql=new StringBuilder("insert into TABLE values ");
for(int i=0;i<5000;i++){
sql.append("(?,?,?,?,?)");
if(i<4999)
sql.append(",");
}
PreparedStatement ps2=conn.prepareStatement(sql.toString());
StringBuilder dsql=new StringBuilder("delete from TABLE where id in (");
for(int i=0;i<5000;i++){
dsql.append("?");
if(i<4999)
dsql.append(",");
else
dsql.append(")");
}
PreparedStatement d_ps2=conn.prepareStatement(dsql.toString());
System.out.println("INIT PS2: ");
System.out.println(((double)System.nanoTime()-t0)/1000D);
//
long t1=System.nanoTime();
for(int i=0;i<5000;i++){
ps.setInt(1, (3100001+i));
ps.setString(2, "providerName"+i);
ps.setInt(3, (76+i%2));
ps.setString(4, "http://url_"+i);
ps.setInt(5, i%2);
ps.addBatch();
}
ps.executeBatch();
ps.close();
System.out.println("FIRST TIME INSERT: ");
System.out.println(((double)System.nanoTime()-t1)/1000D);
//
//
t1=System.nanoTime();
for(int i=0;i<5000;i++){
d_ps.setInt(1, (3100001+i));
d_ps.addBatch();
}
d_ps.executeBatch();
d_ps.close();
System.out.println("FIRST TIME DELETE: ");
System.out.println(((double)System.nanoTime()-t1)/1000D);
//
//
t1=System.nanoTime();
for(int i=0;i<5000;i++){
ps2.setInt(1+i*5, (3100001+i));
ps2.setString(2+i*5, "providerName"+i);
ps2.setInt(3+i*5, (76+i%2));
ps2.setString(4+i*5, "http://url_"+i);
ps2.setInt(5+i*5, i%2);
}
ps2.executeUpdate();
ps2.close();
System.out.println("second TIME INSERT: ");
System.out.println(((double)System.nanoTime()-t1)/1000D);
//
//
t1=System.nanoTime();
for(int i=0;i<5000;i++){
d_ps2.setInt(1+i, (3100001+i));
}
d_ps2.executeUpdate();
d_ps2.close();
System.out.println("second TIME DELETE: ");
System.out.println(((double)System.nanoTime()-t1)/1000D);
//
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
System.out.println(e.getMessage());
System.out.println(e.getSQLState());
System.out.println(e.getNextException());
e.printStackTrace();
}
}
public static void main(String[] args) {
TestSQL test = new TestSQL();
}
}