用ADO的COMMAND對象完成對WEB數據庫動態數據查詢的方法
發表時間:2023-08-16 來源:明輝站整理相關軟件相關文章人氣:
[摘要]用ADO的COMMAND對象實現對WEB數據庫動態數據查詢的方法★ 林碧英眾所周知,由于ASP技術的出現,使得Intranet的應用更加廣泛深入。相當多的企業都建立了企業內部綜合查詢系統,如何快速、...
用ADO的COMMAND對象實現對WEB數據庫動態數據查詢的方法
★ 林碧英
眾所周知,由于ASP技術的出現,使得Intranet的應用更加廣泛深入。相當多的企業都建立了企業內部綜合查詢系統,如何快速、準確地查詢企業內部信息是編寫基于WEB技術應用程序必須要解決的主要問題。ASP提供了用ADO內置的3個主要對象Recordset、Connection和Command對WEB數據庫進行操作。其中Connection的主要功能是建立與WEB數據庫的鏈接;Command的主要功能是向WEB數據庫傳送數據查詢的請求;Recordset的主要功能是建立數據查詢的結果集。由于ADO幾乎就是為WEB數據庫應用量身定做的,所以其中的Command對象在數據查詢方面具有強大的功能。它不僅能夠將一般的SQL指令送往WEB數據庫服務器,還能夠傳送帶有參數的SQL指令,更重要的是還可以傳送存儲過程,因而能夠開發出更具效率的數據庫網頁。
一、command對象的主要屬性和方法
為了進一步闡述Command對象的數據查詢功能,有必要先介紹一下Command對象的與數據查詢密切相關的一些屬性和方法。
屬性:
(1)CommandText:指定數據查詢信息?梢允荢QL語句、存儲過程。
(2)CommandType:指定數據查詢的類型?梢匀∷姆N設定值。
(3)ActiveConnection:建立與Connection通道的鏈接關系。
方法:
(1)Createparameter:建立一個新的參數對象。
(2)Execute:對數據庫提出數據查詢。Command對象可以用Createparameter方法建立新的參數對象,再用parameters對象的append方法將新的參數對象增加到parameters數據集合里。執行結果是:建立一個參數名為合同編號,數據類型為字符型,長度為10,參數允許的讀寫模式為輸入,參數值為“1000030005”的參數對象,然后將此參數加入parameters數據集合。
Command對象是用Execute方法執行數據庫查詢的,Execute方法允許傳入指定的參數,從而達到動態數據查詢。
二、用command對象實現動態數據查詢的幾種方法
用command對象實現動態數據查詢首先要求commandtext屬性值必須是一個帶有參數的SQL指令或者是帶有參數的存儲過程,這里所指的參數必須是查詢信息中允許傳入值的部分。再者就是調用帶有參數值數組的execute方法(格式三)或者是將參數值存放到command對象的parameters數據集合里,再調用Command對象的execute方法。
Command對象可以擁有多個parameter子對象來存儲相關的參數,它們都屬于parameters數據集合。用如下方法可以將參數值寫入parameters數據集合。
假設已經存在一個SQL Server數據庫bcdata,其中有一個數據表為gcht,數據字段有3個,分別是gchtbh(工程合同編號)、gcmc(合同名稱)、htje(合同金額)。用command對象查詢1999年度和2000年度的工程合同簡況。
(1)調用parameters的refresh方法,得到符合commandtext屬性的所有parameter子對象,再將已知的參數值存放到對應的子對象中即可。
(2)調用command對象的createparameter方法,建立一個新的parameter對象,并依附在command對象內的parameters數據集合內。然后調用parameters數據集合的append方法加入新的parameter子對象至數據集合內。
結束語
ADO的connection對象是用execute方法提交數據查詢信息,recordset對象是用open方法提交數據查詢信息,雖然它們提交的數據查詢信息可以包含變量但畢竟不是真正意義上的參數傳遞,另外在組合帶有變量的SQL指令時還容易出錯,最重要的是它們不支持提交的數據查詢信息中含有備注型的字段。不論是參數型數據查詢信息還是存儲過程,command對象的地位都是十分重要的,只要command對象運用得好,對整體數據庫網頁的設計會增加不少的靈活性和方便性。