jdbc:oracle:thin:@localhost:1521:orcl 詳解

來源:互聯網
上載者:User

標籤:

(相關資料整合)

一、整體來說,這是一個串連oracle資料庫的一個連接字串,指明串連資料庫的URL,可理解為三部分-〉協議(jdbc):子協議(oracle:thin):資料來源標識(@localhost:1521:orcl)

二、jdbc:Java Database Connectivity,即Java資料庫連接,實質是一個Java API,可以為多種關聯式資料庫提供統一訪問,它由一組用Java語言編寫的類和介面組成。JDBC可做3件事情:1、串連資料庫 2、發送SQL語句 3、(從資料庫)接收處理結果。從連接字串角度講,指出串連資料庫用的是JDBC的方式。

二、oracle:thin

指出串連的是oracle資料庫,同時串連方式為thin方式,即瘦方式,不需要用戶端的方式。與之對的另一種串連方式為胖方式:cli,這種方式需要安裝用戶端。

三、@localhost:1521:orcl

localhost  資料庫的地址,非本地時可按為資料庫的IP地址;

1521 orcal資料庫預設的監聽連接埠,可換為其他監聽連接埠;

orcl orcal資料庫預設的一個執行個體,可按為其他執行個體名。

四、擴充一下

java串連其他資料庫的連接字串

-----MySQL-----

driverString = com.mysql.jdbc.Driver

dataBaseUrl = jdbc:mysql://127.0.0.1:3306/scutcs

-----ms sql 2000-----

driverString = com.microsoft.jdbc.sqlserver.SQLServerDriver

dataBaseUrl = jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=Demo

-----ms sql 2005-----

driverString = com.microsoft.sqlserver.jdbc.SQLServerDriver

dataBaseUrl = jdbc:sqlserver://localhost:1433;DatabaseName=Demo

-----ms sql 第三方統一方式-----

driverString= net.sourceforge.jtds.jdbc.Driver
dataBaseUrl = jdbc:jtds:sqlserver://localhost:1433;DatabaseName=Demo

這種方式需要第三方包:jtds-1.2.jar;

-----DB2-----

driverString = com.ibm.db2.jcc.DB2Driver
dataBaseUrl = jdbc:db2://localhost:50000/toolsdb

 

五、串連資料庫的七個步驟

1、載入驅動

Class.forName(driverString);

2、建立串連

Connection conn = DriverManager.getConnection(dataBaseUrl , username , password );

3、建立聲明

  a.執行靜態SQL語句,一般通過Statement執行個體實現,eg: Statement stmt = conn.createStatement() ;

  b.執行動態SQL語句,一般通過PreparedStatement執行個體實現,eg: PreparedStatement pstmt = conn.prepareStatement(sql);

  c.執行預存程序,一般通過CallableStatement執行個體實現,eg: CallableStatement cstmt = conn.prepareCall("{CALL demoSp(? , ?)}") ; 

4、執行SQL

  Statement介面提供了三種執行SQL語句的方法:executeQuery 、executeUpdate  和execute  

  a. ResultSet executeQuery(String sqlString):執行查詢資料庫的SQL語句,返回一個結果集(ResultSet)對象。

   具體語句為:ResultSet rs = stmt.executeQuery("SELECT * FROM ...");

  b. int executeUpdate(String sqlString):用於執行INSERT、UPDATE或DELETE語句以及SQL DDL語句,如:CREATE TABLE和DROP TABLE等

   具體語句為:int rows = stmt.executeUpdate("INSERT INTO ...") ;

  c. execute(String sql):用於執行返回多個結果集、多個更新計數或二者組合的語句。

   具體實現的代碼:boolean flag = stmt.execute(sqlString)

5、處理結果

  結果一:執行查詢返回的是ResultSet對象(記錄集)

  結果二:執行更新返回的是本次操作影響的記錄數。

  訪問結果的方法:

  while(rs.next()){

    String name = rs.getString("name") ;

    String pwds = rs.getString(1) ; //本方法高效

  }   

6、關閉資源

  反序關閉,先內後外。記錄集-聲明-串連

  if(rs != null){

  try{

    rs.close();

  }catch(SQLException e) {

    e.printStackTrace() ; e.printStackTrace();

  }  

  } ...

 

jdbc:oracle:thin:@localhost:1521:orcl 詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.