數據庫分為兩類,一類是可以自己本地管理的,例如Access、FoxBase等;另一類是供PC機通過服務器訪問的數據庫,例如Oracle、MS SQL Server等大型數據庫。為了讓數據庫提供給用戶統一的GUI和API,產生了標準ODBC。
JDBC是一個通用的底層的、支持基本SQL功能的Java API。它提供了兩部分與數據庫獨立的API,即JDBC API和JDBC Driver API。
Java程序通過JDBC API訪問JDBC Driver Manager,JDBC Driver Manager再通過JDBC Driver API 訪問不同的JDBC驅動程序,從而實現對不同數據庫的訪問。說白了就是底層是數據庫,上層是用戶的訪問請求,中間層包括各個數據庫的各自的驅動程序、用戶調用的API函數,只不過這里的API有兩個子層,中間加入了一個JDBC Driver Manager來進行管理。整個鏈是這樣的:DB--〉DB Driver--〉JDBC Driver API--〉JDBC Driver Manager--〉JDBC API--〉用戶
JDBC URL結構:
jdbc:<子協議>:<子名稱>
例如:
jdbc:odbc:test
Tips:
(1)
如果通過網絡來訪問數據庫,則將網絡地址的放在子名稱部分,格式為://hostname:port/sub protocol
例如:
jdbc:dbnet://ant:356/fred
(2)
對于odbc子協議,比較特殊,可以在子名稱后面接任意多個屬性值的特征。因此odbc子協議的完整語法為:
jdbc:odbc:<數據源名稱>[;<屬性名>=<屬性值>;......]
例如:
jdbc:odbc:mydb;UID=bacoo;PWD=bacoo