一、選擇題
1. 典型的JDBC程序按( )順序編寫。(知識點:創建 JDBC 應用程序的步驟)
A. 釋放資源
B. 獲得與數據庫的連接
C. 執行SQL命令
D. 註冊JDBC Driver
E. 創建不同類型的Statement
F. 如果有結果集, 處理結果集
DBECFA
2. 執行同構的SQL,用___C___; 執行異構的SQL, 用___B___;調用存儲進程或函數用___A___ 。(知識點:執行 SQL 語句)
A. CallableStatement B. Statement C. PreparedStatement
3. JDBC接口Connection中創建Statement的方法是__createStatement()___;創建PreparedStatement的方法是___prepareStatement() ____;(知識點:建立與數據庫的連接)
4. 接口Statement中定義的execute方法的返回類型是____C____, 代表的含義是___E_____;executeQuery方法返回的類型是___A____; executeUpdate返回的類型是___B____, 代表的含義是____D__。(知識點:執行 SQL 語句)
A. ResultSet B. int C. boolean
D. 受影響的記錄數量 E. 有無ResultSet返回
5. 添上空缺的代碼,實現程序對事務的控制:(知識點:事務管理)
String dburl = “jdbc:oracle:thin:@192.168.1.200:1521:BRIUPDB”;
Connection con = = DriverManager.getConnection(dburl, “briup”, “briup”);
_Statement stat=con.createStatement()_________________________________;
6. 如果要限制某個查詢語句返回的最多的記錄數,可以通過調用Statement的方法___C____來實現。(知識點:操作結果集對象)
A. setFetchSize B. setMaxFieldSize C. setMaxRows
二 簡答題
1、編寫 JDBC 應用程序的基本步驟: (知識點:創建 JDBC 應用程序的步驟)
//1.加載 JDBC 驅動程序
//2.建立與數據庫的連接
//3.準備SQL
//4.執行更新操作
2、簡述Class.forName()的作用 (知識點:class API)
加載驅動
3、簡述你對Statement,PreparedStatement 理解(知識點:建立與數據庫的連接)
statement用於執行靜態 SQL 語句並返回它所生成結果的對象,在執行時確定sql。
PreparedStatement表示預編譯的 SQL 語句的對象。 SQL 語句被預編譯並且存儲在 PreparedStatement 對象中。然後可以使用此對象高效地多次執行該語句,可以傳參數,在得到PreparedStatement對象時確定sql.
CallableStatement用於執行 SQL 存儲過程的接口。如果有輸出參數要註冊說明是輸出參數。
4、在Jdbc編程時爲什麼要養成經常釋放連接的習慣(知識點:關閉與數據庫的連接)
如果不關閉有可能會導致數據庫崩潰。
5、事務處理有哪些步驟請列出,並列出相應的關鍵代碼(知識點:事務管理)
①connection.setAutoCommit(false); //把自動提交關閉
② 正常的DB操作 //若有一條SQL語句失敗了,自動回滾
③ connection.commit() //主動提交
或 connection.rollback() //主動回滾