999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Java數據庫(JDBC)

2008-12-31 00:00:00劉雙雙段欣妤
考試周刊 2008年13期

摘要:本文主要介紹采用JDBC、ODBC接口實現了與SQL Server2000數據庫的連接,并利用Java應用程序對其進行訪問,同時通過圖形用戶界面實現了簡單的查詢功能。

關鍵詞:Java JDBC ODBC Access SQL

前言

Java語言是編寫數據庫應用程序的杰出語言之一,它提供了方便訪問數據的技術。利用Java語言中的JDBC技術,用戶能方便地開發出基于Web網頁的數據庫訪問程序,從而擴充網絡應用功能。JDBC(Java Database Connectivity,Java數據庫連接)是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一的訪問接口。JDBC由一組用Java語言編寫的類與接口組成,通過調用這些類和接口所提供的方法,用戶能夠以一致的方式連接多種不同的數據庫系統(如Access、SQL Server 2000、Oracle、Sybase等),進而可使用標準的SQL語言來存取數據庫中的數據,而不必再為每一種數據庫系統編寫不同的Java程序代碼。

Java應用程序通過JDBC API(java.sql)與數據庫連接,而實際的動作則是由JDBC驅動程序管理器(JDBC Driver Manager)通過JDBC驅動程序與數據庫系統進行連接。ODBC(Open DataBase Connectivity)即開放式的接口,它為用戶提供了一個訪問關系數據庫的標準接口,對于不同的數據庫它提供了一套統一的API;可以使應用程序通過API訪問任何提供了ODBC驅動程序的數據庫,而目前所有的關系數據庫都提供了ODBC驅動程序,所以ODBC已經成為數據庫訪問的業界標準,并得到了廣泛應用。

JDBC(Java DataBase Connectivity)是一種中間件,實現Java應用程序與數據庫管理系統之間的接口功能。正如上面所說的,JDBC將數據庫編程的抽象程度提高,使得程序員只需說明要進行“數據庫連接”而不用說明“怎么連接”,要進行“數據操作”而不用說明“怎么操作”。這種抽象建立在SQL的基礎上,應用程序可嵌入SQL訪問和操作數據庫。這使得應用程序可以獨立于特定的關系數據庫管理系統。

1. JDBC的體系結構

簡單地說,JDBC為應用程序提供一組編程接口,這些接口定義在Java API的java.sql程序包以及JDK 1.2版本以后擴展的javax.sql程序包中。JDBC與數據庫管理系統之間則通過安裝不同的(一般是與特定數據庫管理系統相關的)驅動程序進行通信。驅動程序負責解釋應用程序使用JDBC編程接口嵌入的SQL語句,訪問特定的數據庫管理系統中的數據庫,然后得到相應的結果。應用程序利用JDBC編程接口使用返回的結果,完成對數據庫的訪問。這種體系結構是Java世界中常用的方式,JDBC的體系結構如圖1所示。

ODBC(Open Database Connection)也是一種已被廣泛使用的應用程序與數據庫連接的中間件,但與JDBC提供Java語言編程接口不同,ODBC提供的是C語言編程接口,許多數據庫管理系統供應商已經為ODBC編寫了相應的數據庫驅動程序。JDBC-ODBC橋接驅動器是Java應用程序常用的,由JDBC API自帶的一種驅動程序,它通過ODBC以及數據庫驅動器與數據庫相連,負責將ODBC提供的C語言編程接口轉換為Java語言編程接口。

JDBC-ODBC橋是一種JDBC驅動程序,它通過將JDBC操作轉換為ODBC操作來實現。利用JDBC-ODBC橋可以使程序開發人員不需要學習更多的知識就可以編寫JDBC應用程序,并能夠充分利用現有的ODBC數據源。JDBC-ODBC橋驅動程序可以使JDBC能夠訪問幾乎所有類型的數據庫。

2.JDBC(Java通過JDBC、ODBC接口訪問數據庫)所能完成的3件事

(Ⅰ)與一個數據庫連接

(Ⅱ)向數據庫發送SQL語句

(Ⅲ)處理數據庫返回的結果

下面我們就結合一個例子來說明這3步。

假設我們有一個用access設計的數據庫:student。Mdb,該表中有一個表,其名字為chengjibiao(學號,姓名,數學,物理,英語)。

(1)數據庫連接

設置數據源:

打開Windows中的控制面板,雙擊ODBCData Source圖標,出現User Data Source對話框,單擊add按鈕,增加新的數據源,選擇microsoft access driver(*.mdb)之后,單擊完成按鈕。在Data Source name問本框里為數據源起一個你喜歡的名字(比如redsun),再單擊select按鈕,把數據源redsun設成要連接的數據庫student.mdb,單擊ok按鈕就可以了。

建立JDBC-ODBC橋接器:

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

其中Class是包java.sql中的一個類,該類通過調用它的靜態方法forName就可以建立JDBC-ODBC橋接器,其標準方法是:

Try { Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

}

Catch (ClassNotFoundExceptione)

{}

連接數據庫:

使用包java.sql中的Connection類聲明一個對象,再使用類DriverManager調用它的靜態方法getConnection創建這個連接對象,其標準方法為:

Try{Conncetion

con=DriverManager.getConnection(“jdbc:odbc:redsun”,“snow”,“lss”);

}

Catch(SQLException e) {}

其中snow和lss分別為Login name和password。

(2)向數據庫發送SQL語句

首先使用statement聲明一個SQL語句對象,然后通過剛才創建的連接數據庫的對象con調用createstatment()方法來創建這個SQL語句對象。

try {Statement sql=con.createStatement();}

catch(SQLException e) { }

(3)處理數據庫返回的結果

有了SQL對象之后,就可以調用相應的方法實現對數據庫的查詢和修改,并將查詢結果存放在一個ResultSet類聲明的對象中,也就是說SQL語句對數據庫的查詢操作將返回一個ResultSet對象:

ResultSet rs=sql.executeQuery(“SELECT * FROM 成績表”);

下面是一個關于數據庫查詢的例子。

import java.sql.*;

public class aaa

{public static void main(String args)

{ String name,xuehao;Date date; int math,physics,english;

Connection con;Statement sql; ResultSet rs;

try{Class.forName(″sun.jdbc.odbc.JdbcOdbcDriver″);}

catch(ClassNotFoundException e){}

try

{

con=DriverManager.getConnection(″jdbc:odbc:redsun″,″snow″,″lss″);

sql=con.createStatement();

rs=sql.executeQuery(″SELECT * FROM chengjibiao WHERE 學號 = '4' ″);

while(rs.next())

{ name=rs.getString(2); xuehao=rs.getString(1);

math=rs.getInt(″數學″);

physics=rs.getInt(″物理″);english=rs.getInt(″英語″);

System.out.println(″姓名:″+name);

System.out.println(″學號:″+xuehao);

System.out.println(″數學:″+math);

System.out.println(″物理:″+physics);

System.out.println(″英語:″+english);

}

con.close( );

}

catch(SQLException e1) {}

}

}

結束語

本文只涉及對SQL Server2000數據庫訪問的簡單查詢操作,也可以進行插入、刪除、修改等操作。隨著數據庫技術的發展和Java的不斷升級,利用Java對數據庫的訪問會越來越簡單,并且其應用的范圍也會越來越廣,還有許多新的功能和應用等待我們去研究與開發。

主站蜘蛛池模板: 狠狠亚洲婷婷综合色香| 亚洲国产午夜精华无码福利| 亚洲永久精品ww47国产| 91精品国产情侣高潮露脸| 亚洲欧美日韩综合二区三区| 91在线日韩在线播放| 一区二区三区毛片无码| 久久婷婷五月综合97色| 国产在线自揄拍揄视频网站| 九色最新网址| 国产麻豆精品手机在线观看| 亚洲国产精品美女| 国产成人超碰无码| 538精品在线观看| 久久久黄色片| 欧美精品v欧洲精品| 色悠久久久| 色国产视频| 一级黄色网站在线免费看| 99精品在线视频观看| 国产午夜不卡| www.精品国产| AV不卡国产在线观看| 2022国产91精品久久久久久| 免费国产好深啊好涨好硬视频| 国产激情影院| 1769国产精品免费视频| 女人天堂av免费| 综合人妻久久一区二区精品 | 国产成人AV综合久久| 在线精品亚洲一区二区古装| 67194成是人免费无码| 国产高清国内精品福利| 欧美亚洲欧美| 免费观看成人久久网免费观看| 最新国产成人剧情在线播放| www.亚洲一区二区三区| 欧美翘臀一区二区三区| a级毛片视频免费观看| 国产精品一老牛影视频| 香蕉网久久| 2021国产精品自拍| 内射人妻无套中出无码| 久久性妇女精品免费| 亚洲国产中文欧美在线人成大黄瓜 | 亚洲国产成熟视频在线多多 | 毛片a级毛片免费观看免下载| 国内精品九九久久久精品| av一区二区三区在线观看| 妇女自拍偷自拍亚洲精品| 国产高清免费午夜在线视频| 成人看片欧美一区二区| 亚洲侵犯无码网址在线观看| 精品国产网| 亚洲国产一区在线观看| 国产精品嫩草影院av| 久久99热66这里只有精品一| 8090成人午夜精品| 71pao成人国产永久免费视频| 九九热免费在线视频| 毛片网站观看| 在线日韩日本国产亚洲| jizz在线观看| 欧美自拍另类欧美综合图区| 91精品情国产情侣高潮对白蜜| 日本免费精品| 无码有码中文字幕| 亚洲精品桃花岛av在线| 免费看久久精品99| 成年人国产视频| 日韩a在线观看免费观看| 国产成人8x视频一区二区| 美女国内精品自产拍在线播放| 五月天综合婷婷| 青草视频久久| 欧美第二区| 九色在线观看视频| 日韩色图在线观看| m男亚洲一区中文字幕| 国产传媒一区二区三区四区五区| 国产激情无码一区二区APP| 久久久久久久97|