常用的資料庫訪問方式

來源:互聯網
上載者:User
訪問|資料|資料庫 ASP訪問資料庫的方式有哪些?

在ASP中可以通過三種方式訪問資料庫:
1、IDC(Internet Database Connector)方式;
2、ADO(ActiveX Data Objects)方式;
3、RDS(Remote Data Service)方式。
這三種訪問方式對資料庫的訪問都是由Internet Information Server完成的。通過Web瀏覽器用HTTP協議向IIS(Internet資訊服務器)發送請求,IIS執行對資料庫的訪問,並返回一個HTML格式的文檔響應。下面分別說明:
1、IDC(Internet資料庫介面)
IDC是一個傳統的資料庫查詢工具,用來定義和執行資料庫查詢的SQL命令,並向瀏覽器返回一個指定資料格式的頁面。使用IDC訪問資料庫最大的特點是簡單,幾乎不需要編程就能實現對資料庫的訪問。
IDC使用兩種檔案來控制如何訪問資料庫以及如何建立返回的Web頁面:IDC (.idc)檔案和HTML擴充(.htx)檔案。.idc檔案必須包括ODBC資料來源(Datasource)、HTML擴充檔案的檔案名稱(Template)以及要執行的SQL語句(SQLStatement)。此外還有許多可選欄位,可以根據需要選用。
.htx檔案是帶有用<%%>或<!--%%-->括起來的附加標記的HTML文檔,IDC用這些標記將動態資料添加到文檔中。在.htx檔案中有六個關鍵字(begindetail、enddetail、if、else、endif和"%z"),用來控制資料庫中的資料怎樣和.htx檔案中HTML格式進行合并。資料庫列名說明HTML文檔中什麼資料被返回。
要執行IDC查詢,通常的做法是在HTML檔案中嵌入一個.idc檔案的串連。例如,我們可用下面的HTML語句向Web伺服器發出請求,要求執行idctest.idc檔案:
<A HREF="http://LocalHost/idctest/idctest/idctest.idc">查詢</A>
  當Web伺服器接到請求後,就調用Httpodbc.dll(IDC),與一定的資料來源相連並把SQL命令傳給資料庫。當SQL語句被執行後,IDC把返回的資料融入到.htx檔案中。IDC再把這個文檔返回給Web伺服器,Web伺服器再返回給瀏覽器。

2、ADO(ActiveX資料對象)
  ADO訪問資料庫,更像編寫資料庫應用程式。它把絕大部分的資料庫操作封裝在七個對象中,在ASP頁面中編程調用這些對象執行相應的資料庫操作。
ADO是ASP技術的核心之一,它集中體現了ASP技術豐富而靈活的資料庫訪問功能。ADO建立了基於Web方式訪問資料庫的指令碼編寫模型,不僅支援任何大型資料庫的核心功能,而且支援許多資料庫所專有的特性。
ADO使用本機資料來源,通過ODBC訪問資料庫。這些資料庫可以是關係型資料庫、文本型資料庫、層次型資料庫或者任何支援ODBC的資料庫。主要優點是易用、高速、佔用記憶體和磁碟空間少,所以非常適合於作為伺服器端的資料庫訪問技術。相對於訪問資料庫的CGI程式而言,它是多線程的,在出現大量並發請求時,也同樣可以保持伺服器的運行效率,並且通過串連池(Connection Pool)技術以及對資料庫連接資源的完全控制,提供與遠端資料庫的高效串連與訪問,同時它還支援交易處理(Transaction),以開發高效率、高可靠性的資料庫應用程式。
  一般使用ADO訪問資料庫的ASP指令碼程式應該使用Connection對象建立並管理與遠端資料庫的串連,用Command對象提供靈活的查詢,用Recordset對象訪問資料庫查詢所返回的結果。這三者是ADO的最核心的對象。
與IDC一樣,運行該資料庫訪問指令碼的通常做法是在HTML檔案中嵌入一個.asp檔案的串連。如,用HTML語句向Web伺服器發出請求,要求執行intels.asp檔案:
<A HREF="http://LocalHost/idctest/ado/intels.asp">查詢</A>

3、RDS(遠端資料服務)
  RDS在IIS 4.0中,與ADO整合到一起,使用同樣的編程模型,提供訪問遠端資料庫的功能。ADO雖然能夠提供非常強大的資料庫訪問功能,但是它不支援資料遠程操作(Data Remoting)。它只能執行查詢並返回資料庫查詢的結果,這種結果是靜態,伺服器上的資料庫與用戶端看到的資料沒有活的串連關係。如果使用者端需要修改資料庫,就必須構造修改資料的SQL語句,並執行相應的查詢。而RDS支援資料遠程操作。它不僅能執行查詢並返回資料庫查詢結果,而且可以把伺服器端的資料“搬到”使用者端修改,並調用一個資料庫更新命令,將使用者端修改的資料寫回資料庫,象使用本機資料庫一樣。
RDS的底層是調用ADO來完成的,同樣具有ADO的易用性,區別僅在於RDS需要與資料繫結控制項一同使用,比如Sheridan的ActiveX DataBound Grid控制項。正如ADO類似於VB中的RDO一樣,RDS也類似於VB中的遠端資料控制項(RDC)。
RDS在ADO的基礎上通過繫結資料顯示和操作控制項,提供給用戶端更強的資料表現力和遠端資料操縱功能。可以說RDS是目前基於Web的最好的遠端資料庫訪問方式。



相關文章

Beyond APAC's No.1 Cloud

19.6% IaaS Market Share in Asia Pacific - Gartner IT Service report, 2018

Learn more >

Apsara Conference 2019

The Rise of Data Intelligence, September 25th - 27th, Hangzhou, China

Learn more >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。