Java學習筆記7

JDBC

JDBC的全稱為:Java Database Connectivity,即java數據庫連接。 使用JDBC開發程序,不僅可以跨數據庫,而且還是跨平臺的,也就是說使用JDBC開發的程序可以在windows和unix上使用,同時可以針對mysql和oracle等其他數據庫,而程序不需要做任何的修改。

mysql的連接命令如下:

mysql -p 密碼 -u 用戶名 -h 主機名

這也可以連接遠程主機。 mysql 數據庫通常支持以下兩種存儲機制:

  • MyISAM:這是mysql早期默認的存儲機制,對事務的支持不夠好。
  • InnoDB:InnoDB提供了事務安全的存儲機制。InnoDB通過建立行級鎖來保證事物完整性。

DDL 數據定義語言:create alter drop truncate DML 數據操作語言:insert update delete DCL 數據控制語言:grant revoke

create table/index/view/function/procedure/trigger…

創建表的過程:

create table [模式名.]表名 { columnName1 datatype [default expr], … }

數據庫字段類型:

  • tinyint/smallint/mediumint/int/bigint
  • float/double
  • decimal(dec)
  • date
  • time
  • datetime
  • timstamp(時間戳)
  • year
  • char
  • varchar
  • binary
  • varbinary
  • tinyblob/blob/mediumblob/longblob
  • tinytext/text/mediumtext/longtext
  • enum(‘value1’,’value2’…) 其中的一個
  • set(‘value1’,’value2’…) 其中的幾個

JDBC 的編程步驟:

  • 加載數據庫的驅動:

Class.forName(driverClass),dirverClass對應數據庫驅動類的字符串。如果針對mysql就是: Class.forName(“com.mysql.jdbc.Driver”);

  • 通過DriverManager來獲取數據庫的連接,方法如下:

DriverManager.getConnection(String url, String user, String pass)
url/user/pass 分別代表,數據庫的連接地址,用戶名和密碼,url針對不同的數據庫有不同的地址,這個可以針對每個數據庫的jdbc文檔進行查看,如果針對mysql的數據庫,可以使用如下的方式來連接數據:

jdbc:mysql://hostname:port/databasename
如果是針對oracle的連接,則url地址如下:

jdbc:oracle:thin:@hostname:port:databasename

  • 通過Connection對象創建Statement對象。Connection來創建Statement方法有如下三個:

createStatement(): 創建Statement對象
prepareStatement(String sql): 根據傳入的sql語句,通過數據的預編譯,創建預編譯的Statement對象。
prepareCall(Stirng sql): 根據傳入的sql語句創建預編譯的CallableSattement對象。

  • 使用Statement來執行sql語句,但是執行的時候有如下的三種方式:

execute():可以執行任何的sql語句
executeUpdate(): 主要執行DML DDL 返回受sql影響的行數,執行DCL的時候返回0
executeQuery() 執行查詢語句,返回結果集ResultSet對象

  • 如果是查詢語句,返回的是ResultSet對象,針對ResultSet對象主要提供如下的操作,next() previous() last() beforeFirst() afterLast() 等方法來移動指針。同時可以針對每一條記錄可以使用getXxx()方式來獲取數據。

  • 回收數據庫的資源。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,778評論 18 399
  • JDBC概述 在Java中,數據庫存取技術可分為如下幾類:JDBC直接訪問數據庫、JDO技術、第三方O/R工具,如...
    usopp閱讀 3,558評論 3 75
  • 1. 簡介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存儲過程以及高級映射的優秀的...
    笨鳥慢飛閱讀 5,677評論 0 4
  • Spark SQL, DataFrames and Datasets Guide Overview SQL Dat...
    草里有只羊閱讀 18,385評論 0 85
  • 很多的時候我們都認為自己的快樂與痛苦的來源是外部的一切事物,比如我們會覺得“我要是在北京三環內有一套房子那這輩子就...
    木南Ruan閱讀 151評論 0 0