計算機數據庫檢索程序管理論文

時間:2022-07-14 08:30:00

導語:計算機數據庫檢索程序管理論文一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。

計算機數據庫檢索程序管理論文

摘要:文章以ASP技術為基礎,介紹了基于ASP技術開發數據庫檢索程序的產生機理和

方法,并針對Web數據庫檢索程序特點,采用全文檢索數據庫方式,來實現基于ASP技術

開發Web數據庫檢索程序。

關鍵詞:ASP技術;Web數據庫;檢索程序

1前言

1.1ASP(ActiveServicePage),是微軟推出的動態Web設計技術,是一種用于WWW服務的服務器端腳本環境,在站點的Web服務器上解釋腳本,可產生并執行動態、交互式、高效率的站點服務器應用程序。利用它,可以很容易地把HTML標記、文本、腳本命令及ActiveX組件混合在一起構成ASP頁,以此來生成動態網頁,創建交互式的Web站點,實現對Web數據庫的訪問。

1.2當用戶使用瀏覽器請求ASP主頁時,WEB服務器響應,調用ASP引擎來執行ASP文件,并解釋其中的腳本語言(JScript或VBScript),通過ODBC連接數據庫,由數據庫訪問組件ADO(ActiveXDataObjects)完成數據庫操作,最后ASP生成包含有數據查詢結果的HTML主頁返回用戶端顯示。

2ASP技術及訪問機理

由于ASP在服務器端運行,運行結果以HTML主頁形式返回用戶瀏覽器。ASP技術的核心是內置的ActiveX服務器組件和對象。ActiveX服務器組件包括∶數據庫訪問組件(DatabaseAccesscomponent),提供訪問服務器數據庫的功能;文件訪問組件(FileAccesscomponent),提供讀寫服務器文件的功能;廣告輪播器組件(AdRotatorcomponent),提供廣告輪播器的功能;內容鏈接組件(ContentLinkingcomponent),提供管理超級鏈接、上一頁、下一頁等鏈接功能;瀏覽器信息組件(BrowserCapabilitiesComponent),提供有關瀏覽器信息。內置對象包括∶請求(Request),從前端用戶取得信息;響應(Response),將信息送給前端用戶;服務器(Server),提供Web服務器工具。應用(Application),管理所有的會話信息,供所有用戶共享;會話(Session),儲存一次會話內的用戶信息,僅被該用戶訪問;對象上下文(ObjectContext),配合Transaction服務器進行分布式事務處理。

3數據庫檢索程序的開發

ASP技術是開發網上數據庫服務系統的重要手段,利用ASP技術可以進行有效的網上數據庫檢索系統的開發利用。

3.1通用檢索主頁的設計

通用檢索主頁的設計,實際就是對一個HTMLFORM表單進行編碼和提交的過程。FORM表單是HTML中能夠實現Web頁面交互性的重要組成部分,它為Web頁面提供了豐富的交互對象,可以方便地完成信息查詢條件的錄入及數據庫、檢索途徑的選擇等。

3.2數據庫接口程序設計

數據庫接口程序設計的關鍵是通過ActiveX服務器組件ADO及包含的對象,實現對數據源的讀寫,用戶可在瀏覽器畫面中檢索、輸入、更新和刪除數據庫信息,從而建立提供數據庫信息的主頁內容。ADO主要提供了七個對象和四個集合來完成對于數據庫的管理,包括:Connection、Command、Parameter、Recordset、Field、Property、Error以及Fields、Properties、Parameters、Errors。

3.2.1定義數據源

在WEB服務器上打開“控制面板”,選中“ODBC”,在“系統DSN”下選“添加”,選定你希望的數據庫種類、名稱、位置等。本文定義“SQLSERVER”,數據源為“HT”,數據庫名稱為“HTDATA”,腳本語言采用Jscript。

3.2.2創建數據庫鏈接(Connection)

創建數據庫鏈接(Connection)。通過服務器對象的CreateObject方法,可以創建Connection對象和使用變量接受對象引用。一旦連接對象創建之后,它就可用來打開到任何ODBC數據源的連接。

3.2.3創建數據對象(Recordset)

創建數據對象(Recordset)。

DimRs‘申明變量’

SetRs=Server.CreatObject("ADODB.Recordset")‘創建數據對象’

Rs.PageSize=10‘設置一頁所顯示的記錄數’

3.2.4操作數據庫

(1)首先要定義SQL查詢語句:

Dimsql‘申明變量’

sql="select*frompublicationwheretitlelike’ASP%%’"‘定義SQL查詢語句’,檢索數據庫的publication表中名以ASP開頭的所有信息的記錄。

ConstadOpenkeyset=1‘定義Recordset的類型’

(2)然后執行該查詢命令,Rs.OpenSql,conn,adOpenkeyset‘執行sql語句’,在數據對象Rs中保存檢索結果。

如調用Server.CreateObject方法取得“ADODB.Connection”的實例,再使用Open方法打開數據庫:

conn=Server.CreateObject(“ADODB.Connection”)

conn.Open(“HT”)

來操作數據庫。

(3)最后指定要執行的SQL命令

連接數據庫后,可對數據庫操作,如查詢,修改,刪除等,這些都是通過SQL指令來完成的,如要在數據表signaltab中查詢代碼中含有“X”的記錄

sqlStr=“select*fromsignaltabwherecodelike‘%X%’”

rs=conn.Execute(sqlStr)

4數據庫檢索代碼

基于ASP技術開發的Web數據庫檢索程序,是利用數據庫檢索系統網絡結構和開發工具,將多個數據庫集成在一個平臺上,來實現多數據庫的檢索,從而提高數據庫的檢索效率。

以下是一個全文索引的數據庫檢索部分代碼:

SubInitialize

DimArrNsfAsVariant

DimitemAsNotesItem

’獲得文檔context,因為此是一個$$QuerySaveAgent,所以$$QuerySaveAgent

可以訪問Context文檔上的項目。

DimsessAsNewNotesSession

DimdocAsNotesDocument

Setdoc=sess.DocumentContext

’獲得欲檢索的數據庫,存放在數組ArrNsf內:

ArrNsf=doc.DatabaseName

’如果沒有輸入檢索條件,則輸出提示信息:

IfTrim(Cstr(doc.Query(0)))=""Then

GotoEmptyQuery

EndIf

DimMatchDocAsNotesDocument

DimdbAsNotesDatabase,

DimcollectionAsNotesDocumentCollection

’下列循環從數組ArrNsf中取得欲檢索的數據庫進行處理:

FornsfCount=0ToUbound(ArrNsf)

SearchDB=ArrNsf(nsfCount)

Setdb=sess.GetDatabase("",SearchDB)

’出現錯誤則轉向:

OnErrorGotoBadQuery

’獲得滿足查詢條件的記錄集:

Setcollection=db.FTSearch(doc.Query(0),0)

OnErrorGoto0

’輸出數據庫標題:

’輸出該數據庫中滿足條件的記錄個數:

Thereare"&Str$(collection.Count)&"matching

documents

’下列循環從滿足條件的記錄集中讀取記錄并輸出:

Fori%=1Tocollection.Count

SetMatchDoc=collection.GetNthDocument(i%)

’如果文檔包含Subject或Title,則輸出Subject或Title:

Setitem=MatchDoc.GetFirstItem("Subject")

If(itemIsNothing)Then

Setitem=MatchDoc.GetFirstItem("Title")

EndIf

IfNot(itemIsNothing)Then

"&item.Name&":&item.Text

EndIf

’如果文檔包含Categories,則輸出Categories:

Setitem=MatchDoc.GetFirstItem("Categories")

IfNot(itemIsNothing)Then

Printitem.Name&":"&item.Text

EndIf

’輸出文檔產生日期和作者:

createDate=MatchDoc.Created

Documentcreatedate:&createDate

Authors:

ForallaAuthorInMatchDoc.Authors

PrintaAuthor

EndForall

Next

Next

Out:

ExitSub

EmptyQuery:

Searchquerycannotbeempty

ResumeOut

BadQuery:

Queryisnotunderstandable:"&doc.Query(0)&{"

ResumeOut

EndSub

5總結

5.1Web服務的應用越來越廣,其數據索引也隨之有增無減。同時,在編寫Web數據庫檢索代碼時,既要考慮其安全性,又要確保應用的高質量,致使及時開發相應的數據庫檢索程序越來越迫切。

5.2ASP技術是中小型自主開發網上數據庫服務系統工具。本文從Web網上數據庫檢索系統的設計出發,探討了如何利用ASP技術進行有效的網上數據庫檢索系統的開發利用,具有較強的現實意義。

參考文獻:

[1]劉云生.數據庫設計與分析[M].武漢:華中理工大學出版社,1993.

[2]嚴蔚敏,吳偉民.數據結構[M].北京:清華大學出版社,2001.

[3]鄭若忠,寧洪.數據庫原理[M].湖南:國防科技大學出版社,1998.

[4]李大友.數據庫原理及應用[M].北京:清華大學出版社,1993.