Java中execute,executeUpdate,executeQuery的區別

 1. ResultSet executeQuery(String sql); 執行SQL查詢,並返回ResultSet 對象。
 2.int executeUpdate(String sql); 可執行增,刪,改,返回執行受到影響的行數。
 3. boolean execute(String sql); 可執行任何SQL語句,返回一個布爾值,表示是否返回ResultSet 。sql

execute是executeQuery和executeUpdate的綜合.數據庫

-----緩存

executeUpdate() 這是 PreparedStatement 接口中的方法
executeUpdate(String sql) 這是 PreparedStatement 從父接口 Statement 中繼承過來的方法

executeUpdate() 中執行 SQL 語句須要在建立 PerparedStatement 時經過 Connection 的 prepareStatement(String sql) 方法中寫出,由於 PerparedStatement 中的 SQL 語句數據庫須要進行預編譯和緩存,所以要在建立 PerparedStatement 對象時給出 SQL 語句。

而 executeUpdate(String sql) 是 Statement 中的方法,參數中的 SQL 語句只是提交給數據庫去執行,並不須要預編譯。

若是 SQL 語句中有 ? 佔位符,那麼在設置好佔位符中的值後,必須使用 executeUpdate() 執行。而 executeUpdate(String sql) 只是提交一個 SQL 語句,且這個語句中不能帶有 ? 佔位符。對象

相關文章
相關標籤/搜索