數據庫可以進行調節來做語句緩沖. 通常包含一些類型的語句緩沖. 緩沖使用語句 本身作為要害 字, 訪問方案和相應的語句存儲在緩沖區中. 這樣就答應數據庫引擎 對以前執行過的語句所使用 的訪問方案進行重用. 舉個例子來說, 假如我們向數據 庫發送這樣一條語句 "select a, b from t where c = 2", 計算好的訪問方案就放入緩沖 區了. 假如我們以后再使用同樣的語 句, 數據庫就能重用以前的訪問方案, 這樣就 能節省 CPU.
但是要注重, 整條語句是一個要害字. 例如, 假如我們后來發送的語句是 "select a,b from t where c = 3", 那么就不會找出以前的訪問方案. 因為 "c=3" 和 "c=2" 是不一 樣的. 所以, 例如:
For(int I = 0; I < 1000; ++I) { PreparedStatement ps = conn.prepareStatement("select a,b from t where c = " + I); ResultSet rs = Ps.executeQuery(); Rs.close(); Ps.close(); }
PreparedStatement ps = conn.prepareStatement("select a,b from t where c = ?"); For(int I = 0; I < 1000; ++I) { ps.setInt(1, I); ResultSet rs = ps.executeQuery(); Rs.close(); } ps.close();