李 永
漯河醫(yī)學(xué)高等??茖W(xué)校,河南漯河 462000
隨著網(wǎng)絡(luò)技術(shù)的快速發(fā)展,基于Web的數(shù)據(jù)庫技術(shù)已經(jīng)漸漸成為主流的數(shù)據(jù)庫技術(shù)。與傳統(tǒng)的數(shù)據(jù)庫技術(shù)相比,當(dāng)下的數(shù)據(jù)庫面臨著數(shù)據(jù)量的急劇增長、數(shù)據(jù)內(nèi)容的形式越來越豐富、數(shù)據(jù)應(yīng)用開始多樣化等變化。原來C/S結(jié)構(gòu)的數(shù)據(jù)庫已經(jīng)漸漸地不能滿足用戶的需求,而基于Web的數(shù)據(jù)庫的優(yōu)勢在這樣的形勢下已經(jīng)越來越明顯。
傳統(tǒng)的網(wǎng)絡(luò)游戲及應(yīng)用軟件所使用的數(shù)據(jù)庫技術(shù)大部分是C/S結(jié)構(gòu)的,其特點(diǎn)是每臺終端上都必須安裝數(shù)據(jù)庫,這樣當(dāng)需要對數(shù)據(jù)庫進(jìn)行更新和維護(hù)的時候,必須對每個客戶端進(jìn)行維護(hù),其工作量非常繁瑣。另外由于每臺終端都需要安裝數(shù)據(jù)庫,就對客戶終端的操作系統(tǒng)有一定的要求和限制。
而基于Web的數(shù)據(jù)庫應(yīng)用了B/S結(jié)構(gòu),相對于C/S結(jié)構(gòu)而言,B/S結(jié)構(gòu)最大的優(yōu)點(diǎn)在于客戶端只要安裝了WWW瀏覽器,就可以實(shí)現(xiàn)對數(shù)據(jù)庫的訪問和操作,而不需要安裝其他任何的軟件。其升級和維護(hù)的方式很簡單,而且在服務(wù)器采用安全性更好的LINUX操作系統(tǒng)的同時,終端使用較為普遍的Windows系統(tǒng)也不妨礙使用。
B/S結(jié)構(gòu)也有一定的缺陷,由于客戶端的機(jī)器不用承擔(dān)任何下載和對數(shù)據(jù)的管理工作,這就使得其對服務(wù)器的要求很高,而且需要開發(fā)者有著較高的專業(yè)水平。
在B/S結(jié)構(gòu)中,客戶端首先要運(yùn)行瀏覽器,瀏覽器會以超文本的形式對Web服務(wù)器申請?jiān)L問數(shù)據(jù)庫,Web服務(wù)器接收到這個請求之后會將其轉(zhuǎn)變?yōu)镾QL語法,并提交給安裝了數(shù)據(jù)庫的服務(wù)器。服務(wù)器對請求進(jìn)行合法性的驗(yàn)證,合法通過之后進(jìn)行數(shù)據(jù)的處理,然后將結(jié)果返回Web服務(wù)器。Web服務(wù)器將結(jié)果轉(zhuǎn)化為HTML(網(wǎng)頁)文檔的形式,轉(zhuǎn)發(fā)客戶端的瀏覽器,在瀏覽器之上以網(wǎng)頁的形式顯示,從而提供給用戶想要的數(shù)據(jù)。瀏覽器也會把用戶對數(shù)據(jù)庫進(jìn)行更新、刪除、修改、增加記錄等操作的請求向Web服務(wù)器發(fā)出申請,Web服務(wù)器會通過網(wǎng)關(guān)與服務(wù)器數(shù)據(jù)庫建立關(guān)聯(lián),完成這些工作。
Web數(shù)據(jù)庫通常指的是在互聯(lián)網(wǎng)的基礎(chǔ)上,以Web接口的方式對數(shù)據(jù)庫資源進(jìn)行查詢和訪問的資源形勢。其結(jié)構(gòu)是在后臺服務(wù)器中采用數(shù)據(jù)庫系統(tǒng)進(jìn)行數(shù)據(jù)的儲存和管理,對外提供Web頁面作為用戶的訪問接口,查詢結(jié)果以網(wǎng)頁的形式來返回給用戶。
給予Web的B/S系統(tǒng)是由C/S結(jié)構(gòu)演化而來的,由瀏覽器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器三個系統(tǒng)組成。可以把Web的信息服務(wù)功能和服務(wù)器的管理運(yùn)算能力有機(jī)結(jié)合在一起,實(shí)現(xiàn)揚(yáng)長避短的作用,使用戶的使用效果事半功倍。在B/S系統(tǒng)中,對數(shù)據(jù)的處理工作都是由數(shù)據(jù)庫的服務(wù)器來完成的。
這是一種較為常見的通過Web來進(jìn)行數(shù)據(jù)庫訪問的技術(shù)。其應(yīng)用程序可以由對Web瀏覽器中網(wǎng)頁的鏈接或者填寫網(wǎng)頁地址的方式來啟動。通用網(wǎng)關(guān)接口可以對Web瀏覽器和服務(wù)器數(shù)據(jù)庫中的信息進(jìn)行獲取,還可以使用任意的預(yù)覽來編寫應(yīng)用程序。在Web服務(wù)器對通用網(wǎng)關(guān)接口的應(yīng)用程序進(jìn)行執(zhí)行之后,會將結(jié)果返回HTML頁面上,以供用戶瀏覽使用,在用戶通過瀏覽器向Web服務(wù)器提出對數(shù)據(jù)庫的訪問請求時,Web服務(wù)器會激活相應(yīng)的網(wǎng)關(guān)接口,網(wǎng)關(guān)接口會將HTML的語言轉(zhuǎn)化為SQL語言,并提交給數(shù)據(jù)庫服務(wù)器上的管理系統(tǒng)。管理系統(tǒng)在進(jìn)行請求的合法性驗(yàn)證之后將結(jié)果轉(zhuǎn)給網(wǎng)關(guān)接口,網(wǎng)關(guān)接口再將結(jié)果轉(zhuǎn)化為HTML的語言,轉(zhuǎn)給Web瀏覽器由用戶使用。
通用網(wǎng)關(guān)接口的優(yōu)點(diǎn)在于其跨平臺的兼容性很強(qiáng),幾乎可以應(yīng)用于任何的Web服務(wù)器和操作系統(tǒng)之間。其缺點(diǎn)在于應(yīng)用程序的開發(fā)比較困難,同時效率比較低,系統(tǒng)的安全性也較差,容易發(fā)生安全事故,導(dǎo)致系統(tǒng)的癱瘓。
由于通用網(wǎng)關(guān)接口的編程困難、效率較低等問題,服務(wù)器應(yīng)用編程接口應(yīng)運(yùn)而生。比如微軟公司開發(fā)的IIS系統(tǒng),可以提供擴(kuò)張Web服務(wù)器功能的編程接口ISAPI,還可以提供因特網(wǎng)數(shù)據(jù)庫的連接器,可以對數(shù)據(jù)庫實(shí)現(xiàn)更新和查詢的功能。
ASP是微軟公司發(fā)布的Web服務(wù)器開發(fā)環(huán)境,可以實(shí)現(xiàn)動態(tài)交互的Web服務(wù)器的運(yùn)行。其運(yùn)行環(huán)境是微軟發(fā)布的IIS或者PWS。ASP無法在非Microsoft的操作環(huán)境之下運(yùn)行,因而不能夠?qū)崿F(xiàn)真正的跨平臺使用。ASP既可以對數(shù)據(jù)庫進(jìn)行復(fù)雜的操作,又能夠生成動態(tài)的交互頁面,使用戶可以方便直觀地對數(shù)據(jù)進(jìn)行控制管理。ASP把腳本語言鑲嵌在HTML文檔中,當(dāng)客戶瀏覽網(wǎng)頁使,服務(wù)器就會激活編譯程序進(jìn)行編譯,生成標(biāo)準(zhǔn)的HTML語言返回客戶端,對數(shù)據(jù)進(jìn)行的所有處理都由ASP程序在服務(wù)端完成。
PHP技術(shù)是一種跨平臺的、服務(wù)器端的嵌入式腳本語言,PHP和其他的技術(shù)相比具有開發(fā)代碼快、可擴(kuò)展性較好、安全性高、可移植性較好等優(yōu)點(diǎn)。PHP是跨平臺運(yùn)行的技術(shù),其源代碼是公開和免費(fèi)的,可以在Linux、Windows等各種操作系統(tǒng)上運(yùn)行。PHP主要通過函數(shù)來對數(shù)據(jù)庫進(jìn)行直接的訪問,具有著與各類數(shù)據(jù)庫相連接的函數(shù),可以對各個數(shù)據(jù)庫所提供的擴(kuò)展功能進(jìn)行充分的利用。而且PHP有著非常好的安全性,至今為止在PHP的應(yīng)用中,尚未見到其安全問題的出現(xiàn)。
基于Web的數(shù)據(jù)庫可以把DBMS的高效的數(shù)據(jù)管理儲存能力充分的發(fā)揮出來,以瀏覽器/服務(wù)器的模式為平臺,把客戶端和統(tǒng)一的Web瀏覽器融合起來,可以為用戶提供內(nèi)容豐富、使用簡便的服務(wù)。如今Web數(shù)據(jù)庫已經(jīng)成為Internet所提供的核心服務(wù)。
[1]萬芳.基于Web的數(shù)據(jù)庫技術(shù)淺析[J].信息與電腦(理論版), 2011(5).
[2]肖川.基于Web的數(shù)據(jù)庫技術(shù)淺析[J].硅谷, 2011(14).
[3]張俊,吳紹輝.數(shù)據(jù)庫技術(shù)的研究現(xiàn)狀及發(fā)展趨勢[J].工礦自動化, 2011(7).
[4]呂玲玲.數(shù)據(jù)庫技術(shù)的發(fā)展現(xiàn)狀與趨勢[J].信息與電腦(理論版), 2011(8).
[5]左儒發(fā).基于WEB的數(shù)據(jù)庫應(yīng)用研究[J].信息與電腦(理論版), 2011(7).