1. 程式人生 > >【4】進大廠必須掌握的面試題-Java面試-jdbc

【4】進大廠必須掌握的面試題-Java面試-jdbc

### **1.什麼是JDBC驅動程式?** JDBC驅動程式是使Java應用程式與資料庫進行互動的軟體元件。JDBC驅動程式有4種類型: 1. JDBC-ODBC橋驅動程式 2. 本機API驅動程式(部分為Java驅動程式) 3. 網路協議驅動程式(完全Java驅動程式) 4. 驅動程式(完全Java驅動程式) ### **2.用Java連線資料庫的步驟是什麼?** - 註冊驅動程式類 - 建立連線 - 建立宣告 - 執行查詢 - 關閉連線 ### **3. JDBC API元件是什麼?** java.sql軟體包包含JDBC API的介面和類。 #### **介面:** - 連線 - 宣告 - 準備宣告 - 結果集 - ResultSetMetaData - 資料庫元資料 - CallableStatement等 #### **類:** - DriverManager - Blob - Clob - Types - SQLException等 ### **4. JDBC DriverManager類的作用是什麼?** 在DriverManager的*班級*管理註冊的驅動程式。它可以用於註冊和登出驅動程式。它提供了返回Connection例項的工廠方法。 ### **5.什麼是JDBC連線介面?** 該連線介面保持與資料庫的會話。它可以用於事務管理。它提供了工廠方法,該方法返回Statement,PreparedStatement,CallableStatement和DatabaseMetaData的例項。 ## **![ConnectionInterface-Java面試問題-Edureka](https://img2020.cnblogs.com/other/2169955/202010/2169955-20201012204721832-2057527235.png)** ### **6. JDBC ResultSet介面的目的是什麼?** ResultSet物件代表表的一行。它可用於更改游標指標並從資料庫中獲取資訊。 ### **7.什麼是JDBC ResultSetMetaData介面?** ResultSetMetaData介面返回表的資訊,例如列總數,列名稱,列型別等。 ### **8.什麼是JDBC DatabaseMetaData介面?** DatabaseMetaData介面返回資料庫的資訊,例如使用者名稱,驅動程式名稱,驅動程式版本,表數,檢視數等。 ### **9. JDBC中的批處理是什麼意思?** 批處理可幫助您將相關的SQL語句分組為一個批處理並執行它們,而不是執行單個查詢。通過在JDBC中使用批處理技術,您可以執行多個查詢,從而提高效能。 ### **10. execute,executeQuery,executeUpdate有什麼區別?** 語句***execute(String query)\***用於執行任何SQL查詢,如果結果為ResultSet(例如執行Select查詢),則返回TRUE。如果沒有諸如執行插入或更新查詢之類的ResultSet物件,則輸出為FALSE。我們可以使用*getResultSet()*獲取ResultSet和*getUpdateCount()*方法來獲取更新計數。 語句***executeQuery(String query)\***用於執行Select查詢並返回ResultSet。即使沒有與查詢匹配的記錄,返回的ResultSet也永遠不會為null。在執行選擇查詢時,我們應該使用executeQuery方法,這樣,如果有人嘗試執行插入/更新語句,它將丟擲java.sql.SQLException,並顯示訊息“ executeQuery方法不能用於更新”。 語句**executeUpdate(String query**)用於執行不返回任何內容的插入/更新/刪除(DML)語句或DDL語句。輸出為int,等於SQL資料操作語言(DML)語句的行數。對於DDL語句,輸出為0。 僅在不確定語句型別時,才應使用execute()方法,否則應使用executeQuery或executeUpdate方法。 ### **Q11。您對JDBC語句瞭解什麼?** JDBC語句基本上是用於將SQL命令傳送到資料庫並從資料庫取回資料的語句。JDBC提供了諸如execute(),executeUpdate(),executeQuery等各種方法來與資料庫進行互動。 JDBC支援3種類型的語句: 1. *語句:*用於對資料庫的常規訪問,並在執行時執行靜態SQL查詢。 2. *PreparedStatement:*用於在執行期間向查詢提供輸入引數。 3. *CallableStatement:*用於訪問資料庫儲存過程,並有助於接受執行時引數。 > 歡迎關注 [Java架構師社群](http://javajgs.com/)公眾號. > 本文轉載自[Java架構師必看](http://javajgs.com/archives/5504) ,更多內容點選