免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
Java數(shù)據(jù)庫(kù)連接

Java數(shù)據(jù)庫(kù)連接,(Java Database Connectivity,簡(jiǎn)稱(chēng)JDBC)是Java語(yǔ)言中用來(lái)規(guī)范客戶(hù)端程序如何來(lái)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的應(yīng)用程序接口,提供了諸如查詢(xún)和更新數(shù)據(jù)庫(kù)中數(shù)據(jù)的方法。JDBC也是Sun Microsystems的商標(biāo)1。它JDBC是面向關(guān)系型數(shù)據(jù)庫(kù)的。

基本信息

  • 中文名:Java數(shù)據(jù)庫(kù)連接
  • 外文名:Java Database Connectivity
  • 簡(jiǎn)稱(chēng):JDBC
  • 類(lèi)別:應(yīng)用程序接口

程序類(lèi)型

JDBC驅(qū)動(dòng)程序共分四種類(lèi)型:

類(lèi)型1

JDBC-ODBC橋

這種類(lèi)型的驅(qū)動(dòng)把所有JDBC的調(diào)用傳遞給ODBC,再讓后者調(diào)用數(shù)據(jù)庫(kù)本地驅(qū)動(dòng)代碼(也就是數(shù)據(jù)庫(kù)廠(chǎng)商提供的數(shù)據(jù)庫(kù)操作二進(jìn)制代碼庫(kù),例如Oracle中的oci.dll)。

類(lèi)型2

本地API驅(qū)動(dòng)

這種類(lèi)型的驅(qū)動(dòng)通過(guò)客戶(hù)端加載數(shù)據(jù)庫(kù)廠(chǎng)商提供的本地代碼庫(kù)(C/C++等)來(lái)訪(fǎng)問(wèn)數(shù)據(jù)庫(kù),而在驅(qū)動(dòng)程序中則包含了Java代碼。

類(lèi)型3

網(wǎng)絡(luò)協(xié)議驅(qū)動(dòng)

這種類(lèi)型的驅(qū)動(dòng)給客戶(hù)端提供了一個(gè)網(wǎng)絡(luò)API,客戶(hù)端上的JDBC驅(qū)動(dòng)程序使用套接字(Socket)來(lái)調(diào)用服務(wù)器上的中間件程序,后者在將其請(qǐng)求轉(zhuǎn)化為所需的具體API調(diào)用。

類(lèi)型4

本地協(xié)議驅(qū)動(dòng)

這種類(lèi)型的驅(qū)動(dòng)使用Socket,直接在客戶(hù)端和數(shù)據(jù)庫(kù)間通信。

API概述

JDBC API主要位于JDK中的java.sql包中(之后擴(kuò)展的內(nèi)容位于javax.sql包中),主要包括(斜體代表接口,需驅(qū)動(dòng)程序提供者來(lái)具體實(shí)現(xiàn)):

DriverManager:負(fù)責(zé)加載各種不同驅(qū)動(dòng)程序(Driver),并根據(jù)不同的請(qǐng)求,向調(diào)用者返回相應(yīng)的數(shù)據(jù)庫(kù)連接(Connection)。Driver:驅(qū)動(dòng)程序,會(huì)將自身加載到DriverManager中去,并處理相應(yīng)的請(qǐng)求并返回相應(yīng)的數(shù)據(jù)庫(kù)連接(Connection)。Connection:數(shù)據(jù)庫(kù)連接,負(fù)責(zé)與進(jìn)行數(shù)據(jù)庫(kù)間通訊,SQL執(zhí)行以及事務(wù)處理都是在某個(gè)特定Connection環(huán)境中進(jìn)行的??梢援a(chǎn)生用以執(zhí)行SQL的Statement。Statement:用以執(zhí)行SQL查詢(xún)和更新(針對(duì)靜態(tài)SQL語(yǔ)句和單次執(zhí)行)。PreparedStatement:用以執(zhí)行包含動(dòng)態(tài)參數(shù)的SQL查詢(xún)和更新(在服務(wù)器端編譯,允許重復(fù)執(zhí)行以提高效率)。CallableStatement:用以調(diào)用數(shù)據(jù)庫(kù)中的存儲(chǔ)過(guò)程。SQLException:代表在數(shù)據(jù)庫(kù)連接的建立和關(guān)閉和SQL語(yǔ)句的執(zhí)行過(guò)程中發(fā)生了例外情況(即錯(cuò)誤)。

數(shù)據(jù)類(lèi)型的映射

從SQL到Java數(shù)據(jù)類(lèi)型映射的JDBC規(guī)范
SQL類(lèi)型 Java類(lèi)型
CHAR java.lang.String
VARCHAR java.lang.String
LONGVARCHAR java.lang.String
NUMERIC java.math.BigDecimal
DECIMAL java.math.BigDecimal
BIT boolean
TINYINT byte
SMALLINT short
INTEGER int
BIGINT long
REAL float
FLOAT double
DOUBLE double
BINARY byte[]
VARBINARY byte[]
LONGVARBINARY byte[]
DATE java.sql.Date
TIME java.sql.Time
TIMESTAMP java.sql.Timestamp
BLOB java.sql.Blob
CLOB java.sql.Clob
Array java.sql.Array
REF java.sql.Ref
Struct java.sql.Struct

注:這種類(lèi)型匹配不是強(qiáng)制性標(biāo)準(zhǔn),特定的JDBC廠(chǎng)商可能會(huì)改變這種類(lèi)型匹配。例如Oracle中的DATE類(lèi)型是包含時(shí)分秒,而java.sql.Date僅僅支持年月日。

連接方式

下面羅列了各種數(shù)據(jù)庫(kù)使用JDBC連接的方式:

⒈O(jiān)racle8/8i/9i數(shù)據(jù)庫(kù)(thin模式)

⒉DB2數(shù)據(jù)庫(kù)

⒊Sql Server7.0/2000數(shù)據(jù)庫(kù)

⒋Sybase數(shù)據(jù)庫(kù)

⒌Informix數(shù)據(jù)庫(kù)

⒍MySQL數(shù)據(jù)庫(kù)

⒎PostgreSQL數(shù)據(jù)庫(kù)

⒏access數(shù)據(jù)庫(kù)直連用ODBC的

當(dāng)訪(fǎng)問(wèn)一個(gè)遠(yuǎn)程數(shù)據(jù)庫(kù)時(shí),JDBC將利用Internet文件的編址方案和一個(gè)看起來(lái)很像網(wǎng)頁(yè)地址(統(tǒng)一資源定位器URL)的文件名。

JDBC為程序員指定了一組在編寫(xiě)SQL請(qǐng)求時(shí)使用的面向?qū)ο蟮念?lèi)。還有一組附加的類(lèi)描述了JDBC驅(qū)動(dòng)API。能映射成Java數(shù)據(jù)類(lèi)型的最普通的SQL數(shù)據(jù)類(lèi)型都是支持的。這個(gè)API提供了微軟事務(wù)服務(wù)器請(qǐng)求的執(zhí)行支持以及提交和回滾到事務(wù)開(kāi)始的能力。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Java開(kāi)發(fā)入門(mén)到精通之Java的數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)
JAVA數(shù)據(jù)庫(kù)連接
選擇合適的JDBC驅(qū)動(dòng)程序
資深Java工程師推薦新手干貨教材 《Java Web開(kāi)發(fā)實(shí)戰(zhàn)》
jdbc
網(wǎng)絡(luò)技術(shù)名詞縮寫(xiě)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服