麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

JDBC編程基礎(chǔ)(1)

2019-11-18 14:31:14
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

  JDBC編程基礎(chǔ)(1)

1. 介紹

許多開(kāi)發(fā)者和用戶都在尋找java程序中訪問(wèn)數(shù)據(jù)庫(kù)的便捷方法。由于Java是一個(gè)健壯,安全,易于使用的,易于理解且可以從網(wǎng)絡(luò)中自動(dòng)download ,所以它成為開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用的一種良好的語(yǔ)言基礎(chǔ)。它提供了C,C ,Smalltalk, BASIC, COBOL, and 4GLs的許多優(yōu)點(diǎn)。許多公司已經(jīng)開(kāi)始在Java與DBMS的連接方面做工作。

許多Java應(yīng)用開(kāi)發(fā)者都希望能夠編寫(xiě)?yīng)毩⒂谔囟―BMS的程序,而我們也相信一個(gè)獨(dú)立于DBMS的接口將使得與各種各樣DBMS連接變得最為便捷,開(kāi)發(fā)更加迅速。所以我們認(rèn)為定義一個(gè)通用的SQL數(shù)據(jù)庫(kù)存取框架,在各種各樣的提供數(shù)據(jù)庫(kù)連接模塊上提供統(tǒng)一的界面是十分有意義的。這使程序員可以面對(duì)單一的數(shù)據(jù)庫(kù)界面,使數(shù)據(jù)庫(kù)無(wú)關(guān)的Java工具和產(chǎn)品成為可能,使得數(shù)據(jù)庫(kù)連接的開(kāi)發(fā)者可以提供各種各樣的連接方案。我們看到我們定義一個(gè)通用低層的,支持基本SQL功能的Java DataBase Connectivity (JDBC)API的緊迫任務(wù)。

幸運(yùn)的是我們不必從頭設(shè)計(jì)一個(gè)SQL API。我們可以把我們的工作建立在 X/Open SQL CLI (調(diào)用層接口)之上(它也是Microsoft´s ODBC 的基礎(chǔ))。
我們主要任務(wù)是定義一個(gè)自然的Java接口來(lái)與X/Open CLI中定義的基本的抽象層和概念連接。

JDBC API得到數(shù)據(jù)庫(kù)開(kāi)發(fā)廠商,連接開(kāi)發(fā)廠商,ISV,以及應(yīng)用開(kāi)發(fā)者的支持是十分重要的。我們相信把我們的工作建立在ODBC抽象層的基礎(chǔ)上將JDBC更加輕易得到大家的接受。而且從技術(shù)上來(lái)說(shuō),ODBC是我們?cè)O(shè)計(jì)工作的一個(gè)良好基礎(chǔ)。

因?yàn)镺DBC是一個(gè)C語(yǔ)言接口,所以O(shè)DBC在Java中直接使用不適當(dāng)。從Java中來(lái)調(diào)用C代碼在安全性,健壯性,實(shí)現(xiàn)的方便,可移植性等等方面有許多不便。它使得Java在這些方面的許多優(yōu)點(diǎn)得不到發(fā)揮。

我們已經(jīng)在短期里面實(shí)現(xiàn)了一個(gè)建立在ODBC上的API。長(zhǎng)遠(yuǎn)來(lái)看,我們可以通過(guò)其他方式提供實(shí)現(xiàn)。


1.1. 注重
我們非常感謝在數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)連接和數(shù)據(jù)庫(kù)工具領(lǐng)域的許多早期的工作者。他們?yōu)镴DBC的早期草案提供了很好的意見(jiàn)和建議。他們的工作對(duì)本規(guī)范起了不可估量的作用。

2. 目標(biāo)與哲學(xué)

這個(gè)部分描述了指引這個(gè)API開(kāi)發(fā)的目標(biāo)以及哲學(xué)。

2.1. SQL 級(jí) API

我們的主要目標(biāo)是為Java定義一個(gè)“調(diào)用級(jí)”(call-level)的SQL接口。著意味著我們主要的注重力集中在執(zhí)行原原本本的SQL語(yǔ)句并且取回結(jié)果。我們預(yù)計(jì)高層的API也將被定義,這些可能將建立在基層的接口上。這些高層接口包括象直接地、透明地把表里面的數(shù)據(jù)影射到Java類里面,用語(yǔ)法樹(shù)表示更加通用的查詢,以及Java內(nèi)嵌的SQL語(yǔ)法。

我們希望大量的應(yīng)用開(kāi)發(fā)工具將使用我們的API。然而我們也希望程序員能夠使用我們的API,尤其是目前這樣在Java里沒(méi)有任何其他手段(應(yīng)該是說(shuō)數(shù)據(jù)庫(kù)訪問(wèn)手段)的情況下。

2.2. 遵循SQL

數(shù)據(jù)庫(kù)系統(tǒng)支持各式各樣的SQL語(yǔ)法和語(yǔ)義,它們相互之間在比較高級(jí)的功能例如外部連接,內(nèi)嵌過(guò)程等方面并不一致,盡管我們能夠盼望著隨時(shí)間的推移這些部分的SQL可以獲得標(biāo)準(zhǔn)化。同時(shí)我們采取這樣的態(tài)度與立場(chǎng):

In fact, an application query need not even be SQL, or it may be a specialized derivative of SQL, e.g. for document or image queries, designed for specific DBMSs.In order to pass JDBC compliance tests and to be called "JDBC COMPLIANT ?" we require that a driver support at least ANSI SQL-2 Entry Level. This gives applications that want wide portability a guaranteed least common denominator. We believe ANSI SQL-2 Entry Level is reasonably powerful and is reasonably widely supported today.

JDBC答應(yīng)查詢表達(dá)式直接傳遞到底層的數(shù)據(jù)驅(qū)動(dòng),這樣一個(gè)程序可以獲得盡量多的SQL功能,但是可能被DBMS拒絕。事實(shí)上,一個(gè)程序的查詢甚至可以不是SQL的,或者是SQL的一個(gè)非凡演化,例如:為專門(mén)數(shù)據(jù)庫(kù)設(shè)計(jì)的文本或者圖形查詢。
為了通過(guò)JDBC兼容的測(cè)試,并且能夠被稱為JDBC兼容,我們要求一個(gè)驅(qū)動(dòng)至少支持ANSI SQL-2的標(biāo)準(zhǔn)。這使得那些需要廣泛移植性的程序獲得一個(gè)最小的分母(這句話的原文是:
This gives applications that want wide portability a guaranteed least common denominator.)。
我們相信ANSI SQL-2是足夠強(qiáng)大的,并且是得到足夠支持的。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 末成年女av片一区二区 | 羞羞的视频免费在线观看 | 怦然心动50免费完整版 | 黄色大片网站在线观看 | 久久久精品视 | av之家在线观看 | 成人午夜免费国产 | av电影直播| 青青草在线免费观看 | 亚洲成人午夜精品 | 一级片免费在线 | 免费观看一区二区三区 | 欧美精品一区二区久久 | 国产成人精品区 | 羞羞的视频免费观看 | 成人免费在线播放 | 少妇一级淫片免费放播放 | 黄色免费影片 | 欧美黄色看 | 亚洲一级毛片 | 一级片九九 | a黄网站 | 黄色一级片毛片 | 国产妞干网 | 国产精品久久久乱弄 | 久久嗨 | 午夜视频免费在线观看 | 久章草在线观看 | 最近免费观看高清韩国日本大全 | www.com香蕉 | 在线播放黄色片 | 成人18网站| 国产精品久久久久无码av | 欧美日韩国产一区二区三区在线观看 | av资源在线天堂 | 九一免费版在线观看 | 久久无 | 午夜天堂在线视频 | 有兽焉免费动画 | 日本在线播放一区二区 | 国产亚洲精品久久午夜玫瑰园 |