JDBC中 execute與executeUpdate的區別 execute與executeUpdate的區別 步驟 1 : 相同點 execute與executeUpdate的相同點:都可以執行增加,刪除,修改 package jdbc; import java.sql.Connection; i ...
JDBC中 execute與executeUpdate的區別
execute與executeUpdate的區別
步驟 1 : 相同點
execute與executeUpdate的相同點:都可以執行增加,刪除,修改
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8","root", "admin");
Statement s = c.createStatement();) {
String sqlInsert = "insert into Hero values (null,'蓋倫',616,100)";
String sqlDelete = "delete from Hero where id = 100";
String sqlUpdate = "update Hero set hp = 300 where id = 100";
// 相同點:都可以執行增加,刪除,修改
s.execute(sqlInsert);
s.execute(sqlDelete);
s.execute(sqlUpdate);
s.executeUpdate(sqlInsert);
s.executeUpdate(sqlDelete);
s.executeUpdate(sqlUpdate);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
步驟 2 : 不同點
不同1:
execute可以執行查詢語句
然後通過getResultSet,把結果集取出來
executeUpdate不能執行查詢語句
不同2:
execute返回boolean類型,true表示執行的是查詢語句,false表示執行的是insert,delete,update等等
executeUpdate返回的是int,表示有多少條數據受到了影響
package jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestJDBC {
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try (Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8","root", "admin");
Statement s = c.createStatement();) {
// 不同1:execute可以執行查詢語句
// 然後通過getResultSet,把結果集取出來
String sqlSelect = "select * from hero";
s.execute(sqlSelect);
ResultSet rs = s.getResultSet();
while (rs.next()) {
System.out.println(rs.getInt("id"));
}
// executeUpdate不能執行查詢語句
// s.executeUpdate(sqlSelect);
// 不同2:
// execute返回boolean類型,true表示執行的是查詢語句,false表示執行的是insert,delete,update等等
boolean isSelect = s.execute(sqlSelect);
System.out.println(isSelect);
// executeUpdate返回的是int,表示有多少條數據受到了影響
String sqlUpdate = "update Hero set hp = 300 where id < 100";
int number = s.executeUpdate(sqlUpdate);
System.out.println(number);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
更多內容,點擊瞭解: JDBC中 execute與executeUpdate的區別