1. 程式人生 > 其它 >【資料庫程式設計】1.JDBC概述

【資料庫程式設計】1.JDBC概述

1. JDBC基本介紹

  1. JDBC為訪問不同的資料庫提供了統一的介面,為使用者遮蔽了細節問題。
  2. Java程式設計師使用JDBC,可以連線任何提供了JDBC驅動程式的資料庫系統,從而完成對資料庫的各種操作。

2. JDBC API

JDBC API是一系列的介面,它統一和規範了應用程式與資料庫的連線、執行SQL語句,並得到返回結果等各類操作,相關類和介面在java.sql與javax.sql包中。

2.1 DriverManager驅動管理類

該類方法都為靜態方法。

  • void registerDriver(java.sql.Driver driver)
    • 註冊驅動
  • Connection getConnection(String url, String user, String password)
    • 得到連線

2.2 Connection介面

  • createStatement()
    • 建立statement物件
  • PreparedStatement prepareStatement(String sql)
    • 生成預處理物件

2.3 Statement介面

  • int executeUpdate(String sql)
    • 執行DML語句,返回受影響的行數
  • ResultSet executeQuery(String sql)
    • 執行DQL語句,返回查詢到的結果集
  • boolean execute(String sql)
    • 執行任意SQL語句,返回布林含義為是否執行成功

2.4 PreparedStatement介面

  • int executeUpdate(String sql)
    • 執行DML語句,返回受影響的行數
  • ResultSet executeQuery(String sql)
    • 執行DQL語句,返回查詢到的結果集
  • boolean execute(String sql)
    • 執行任意SQL語句,返回布林含義為是否執行成功
  • setXxx(佔位符索引, 佔位符的值)
    • 用於解決SQL注入,在佔位符上填充內容
    • 方法如:void setInt(int parameterIndex, int x)
  • setObject(佔位符索引, 佔位符的值)
    • 可以填寫任意型別物件,靈活性高
  • void addBatch()
    • 新增需要批量處理的SQL語句或引數
  • int[] executeBatch()
    • 執行批量處理
  • void clearBatch()
    • 清空批處理包

2.5 ResultSet結果集

  • boolean next()
    • 向下移動一行,如果沒有下一行就返回false
  • boolean previous()
    • 向上移動一行,如果沒有上一行就返回false
  • Xxx getXxx(列的索引或者列名)
    • 返回對應列的值,接收的型別是Xxx
    • 方法如:int getInt(int columnIndex)、int getInt(String columnLabel)
  • Object getObject(列的索引或者列名)
    • 返回對應列的值