第二十卷 Web數據庫技術介紹
一、引言
Internet網是目前全球最大的計算機通信網,它遍及全球幾乎所有的國家和地區。WWW係統是一個大型的分布式超媒體信息數據庫,它極大地推動了Internet的發展,已經成為Internet中最流行、最主要的信息服務方式。它能夠把各種類型的信息資源,如靜態圖象、文本、數據、視頻和音頻有機地結合起來,使用戶能夠在Internet上瀏覽、查詢和共享建立在WWW服務器所有站點上的超媒體信息。目前Web技術與數據庫管理係統(DBMS)相互融合領域的研究已成為熱點方向之一,數據庫廠家和WEB公司也紛紛推出各自的產品和中間件支持Web技術和DBMS的融合,將兩者取長補短,發揮各自的優勢,使用戶可以在Web瀏覽器上方便地檢索數據庫的內容。所謂Web數據庫管理係統是指基於Web模式的DBMS的信息服務,充分發揮DBMS高效的數據存儲和管理能力,以Web這種瀏覽器/服務器(B/S)模式為平台,將客戶端融入統一的Web瀏覽器,為Internet用戶提供使用簡便、內容豐富的服務。Web數據庫管理係統必將成為Internet和Intranet提供的核心服務,為Internet上的電子商務提供技術支持。
二、通過WWW訪問數據庫的優點
數據庫應用的一個重要方麵就是對數據的訪問,但是許多數據庫係統目前提供的訪問方式,或是一個字符方式的查詢界麵,或是通過編程方式實現,無論哪種方式都較難使用,近年來發展的一些RAD(Rapid Application development)工具,如VB、Delphi、PowerBuilder等可以方便地開發一些圖形界麵的訪問數據庫軟件,但是這樣的開發工具需要使用者具有編程技術,並且開發的程序不能跨平台運行。而且用RAD工具開發的軟件,隨用戶需求的改變,可能需要增添新的功能或在界麵上做一些改動。如果開發的軟件使用範圍比較廣泛的話,那麼軟件的更新將是一項很大的工作。而Internet技術的發展,則使上述問題有了解決的辦法,如果建立了WWW服務器,就可以通過WWW服務器實現對數據庫的訪問,上麵提到的問題也就都可以解決了。
與傳統方式相比,通過WWW訪問數據庫的優點在於:
1.借用現成的瀏覽器軟件,無需開發數據庫前端:如果能夠通過WWW來訪問數據庫,我們就不需要開發客戶端的程序,使用的數據庫應用都可以通過瀏覽器來實現,界麵統一,也減少了批培訓費用,能使廣大用戶很方便地訪問數據庫信息。
2.標準統一,開發過程簡單:HTM L是WWW信息地組織方式,是一種國際標準,使用的WWW服務器與 榔骶裱飧霰曜肌J褂肏TML標準,開發者甚至隻需學習HTML一種語言,使用者隻需學習一種界麵--瀏覽器界麵。
3.交叉平台支持:幾乎在各種操作係統上都有現成的瀏覽器可供使用,為一個WWW服務器書寫的HTML文檔,可以被所有平台的瀏覽器所瀏覽,實現了跨平台操作。
三、傳統的Web數據庫係統體係結構
傳統的Web數據庫係統如圖1所示。一般實現Web數據庫係統的連接和應用可采取兩種方法,一種是在Web服務器端提供中間件來連接Web服務器和數據庫服務器,另一種是把應用程序下載到客戶端並在客戶端直接訪問數據庫。中間件負責管理Web服務器和數據庫服務器之間的通信並提供應用程序服務,它能夠直接調用外部程序或腳本代碼來訪問數據庫,因此可以提供與數據庫相關的動態HTML頁麵,或執行用戶查詢,並將查詢結果格式化成HTML頁麵。通過Web服務器返回給Web瀏覽器。最基本的中間件技術有通過網關接口CGI和應用程序接口API兩種。
(一)、基於通用網關接口CGI
CGI是WWW服務器運行時外部程序的規範,按照CGI編寫的程序可以擴展服務器的功能,完成服務器本身不能完成的工作,外部程序執行時間可以生成HTML文檔,並將文檔返回WWW服務器。CGI應用程序能夠與瀏覽器進行交互作用,還可以通過數據庫的API與數據庫服務器等外部數據源進行通信,如一個CGI程序可以從數據庫服務器中獲取數據,然後格式化為HTML文檔後發送給瀏覽器,也可以將從瀏覽器獲得的數據放到數據庫中。幾乎使用的服務器軟件都支持CGI,開發人員可以使用任何一種WWW服務器內置語言編寫CGI,其中包括流行的C、C++、VB和Delphi等。