91精品人妻互换日韩精品久久影视|又粗又大的网站激情文学制服91|亚州A∨无码片中文字慕鲁丝片区|jizz中国无码91麻豆精品福利|午夜成人AA婷婷五月天精品|素人AV在线国产高清不卡片|尤物精品视频影院91日韩|亚洲精品18国产精品闷骚

您當前位置:首頁 > 新聞頻道 > 技術動態(tài) > 正文
ASP技術開發(fā)Web數(shù)據(jù)庫檢索程序探討
摘 要:文章以ASP技術為基礎,介紹了基于ASP技術開發(fā)數(shù)據(jù)庫檢索程序的產生機理和
方法,并針對Web數(shù)據(jù)庫檢索程序特點,采用全文檢索數(shù)據(jù)庫方式,來實現(xiàn)基于ASP技術
開發(fā)Web數(shù)據(jù)庫檢索程序。
關鍵詞:ASP技術;Web數(shù)據(jù)庫;檢索程序

1 前 言
1.1 ASP(Active Service Page),是微軟推出的動態(tài)Web設計技術,是一種用于WWW服務的服務器端腳本環(huán)境,在站點的Web服務器上解釋腳本,可產生并執(zhí)行動態(tài)、交互式、高效率的站點服務器應用程序。利用它,可以很容易地把HTML標記、文本、腳本命令及ActiveX組件混合在一起構成ASP頁,以此來生成動態(tài)網(wǎng)頁,創(chuàng)建交互式的Web站點,實現(xiàn)對Web數(shù)據(jù)庫的訪問。
1.2 當用戶使用瀏覽器請求ASP主頁時,WEB服務器響應,調用ASP引擎來執(zhí)行ASP文件,并解釋其中的腳本語言(JScript 或VBScript),通過ODBC連接數(shù)據(jù)庫,由數(shù)據(jù)庫訪問組件ADO(ActiveX Data Objects)完成數(shù)據(jù)庫操作,最后ASP生成包含有數(shù)據(jù)查詢結果的HTML主頁返回用戶端顯示。
2 ASP技術及訪問機理 
由于ASP在服務器端運行,運行結果以HTML主頁形式返回用戶瀏覽器。ASP技術的核心是內置的ActiveX服務器組件和對象。ActiveX服務器組件包括∶數(shù)據(jù)庫訪問組件(Database Access component),提供訪問服務器數(shù)據(jù)庫的功能;文件訪問組件(File Access component),提供讀寫服務器文件的功能;廣告輪播器組件(Ad Rotator component),提供廣告輪播器的功能;內容鏈接組件(Content Linking component),提供管理超級鏈接、上一頁、下一頁等鏈接功能;瀏覽器信息組件(Browser Capabilities Component),提供有關瀏覽器信息。內置對象包括∶請求(Request),從前端用戶取得信息;響應(Response),將信息送給前端用戶;服務器(Server),提供Web服務器工具。應用(Application),管理所有的會話信息,供所有用戶共享;會話(Session),儲存一次會話內的用戶信息,僅被該用戶訪問;對象上下文(ObjectContext),配合Transaction服務器進行分布式事務處理。 
3 數(shù)據(jù)庫檢索程序的開發(fā)
ASP技術是開發(fā)網(wǎng)上數(shù)據(jù)庫服務系統(tǒng)的重要手段,利用ASP技術可以進行有效的網(wǎng)上數(shù)據(jù)庫檢索系統(tǒng)的開發(fā)利用。
3.1 通用檢索主頁的設計
通用檢索主頁的設計,實際就是對一個HTML FORM表單進行編碼和提交的過程。FORM表單是HTML中能夠實現(xiàn)Web頁面交互性的重要組成部分,它為Web頁面提供了豐富的交互對象,可以方便地完成信息查詢條件的錄入及數(shù)據(jù)庫、檢索途徑的選擇等。
3.2 數(shù)據(jù)庫接口程序設計
數(shù)據(jù)庫接口程序設計的關鍵是通過ActiveX服務器組件ADO及包含的對象,實現(xiàn)對數(shù)據(jù)源的讀寫,用戶可在瀏覽器畫面中檢索、輸入、更新和刪除數(shù)據(jù)庫信息,從而建立提供數(shù)據(jù)庫信息的主頁內容。ADO主要提供了七個對象和四個集合來完成對于數(shù)據(jù)庫的管理,包括:Connection、Command、Parameter、Recordset、Field、Property、Error以及Fields、Properties、Parameters、Errors。 
3.2.1 定義數(shù)據(jù)源
  在WEB服務器上打開“控制面板”,選中“ODBC”,在“系統(tǒng)DSN”下選“添加”,選定你希望的數(shù)據(jù)庫種類、名稱、位置等。本文定義“SQL SERVER”,數(shù)據(jù)源為“HT”,數(shù)據(jù)庫名稱為“HTDATA”,腳本語言采用Jscript。
3.2.2 創(chuàng)建數(shù)據(jù)庫鏈接(Connection) 
創(chuàng)建數(shù)據(jù)庫鏈接(Connection)。通過服務器對象的CreateObject方法,可以創(chuàng)建Connection對象和使用變量接受對象引用。一旦連接對象創(chuàng)建之后,它就可用來打開到任何ODBC數(shù)據(jù)源的連接。
3.2.3 創(chuàng)建數(shù)據(jù)對象(Recordset)
創(chuàng)建數(shù)據(jù)對象(Recordset)。
Dim Rs ‘申明變量’
Set Rs=Server.CreatObject("ADODB.Recordset") ‘創(chuàng)建數(shù)據(jù)對象’
Rs.PageSize=10 ‘設置一頁所顯示的記錄數(shù)’
3.2.4 操作數(shù)據(jù)庫 
(1)首先要定義SQL查詢語句:
Dim sql ‘申明變量’
sql="select * from publication where title like ’ASP%%’" ‘定義SQL查詢語句’,檢索數(shù)據(jù)庫的publication表中名以ASP開頭的所有信息的記錄。
Const adOpenkeyset=1 ‘定義Recordset的類型’ 
(2)然后執(zhí)行該查詢命令,Rs.Open Sql,conn, adOpenkeyset ‘執(zhí)行sql語句’,在數(shù)據(jù)對象Rs中保存檢索結果。
如調用Server.CreateObject方法取得“ADODB.Connection”的實例,再使用Open方法打開數(shù)據(jù)庫:
conn = Server.CreateObject(“ADODB.Connection”)
  conn.Open(“HT”)
  來操作數(shù)據(jù)庫。
(3)最后指定要執(zhí)行的SQL命令
  連接數(shù)據(jù)庫后,可對數(shù)據(jù)庫操作,如查詢,修改,刪除等,這些都是通過SQL指令來完成的,如要在數(shù)據(jù)表signaltab中查詢代碼中含有“X”的記錄
  sqlStr = “select * from signaltab where code like ‘%X%’”
  rs = conn.Execute(sqlStr)
4 數(shù)據(jù)庫檢索代碼
基于ASP技術開發(fā)的Web數(shù)據(jù)庫檢索程序,是利用數(shù)據(jù)庫檢索系統(tǒng)網(wǎng)絡結構和開發(fā)工具,將多個數(shù)據(jù)庫集成在一個平臺上,來實現(xiàn)多數(shù)據(jù)庫的檢索,從而提高數(shù)據(jù)庫的檢索效率。
以下是一個全文索引的數(shù)據(jù)庫檢索部分代碼:
Sub Initialize 
Dim ArrNsf As Variant 
Dim item As NotesItem 
’獲得文檔 context,因為此代理是一個$$QuerySaveAgent,所以$$QuerySaveAgent 
可以訪問 Context文檔上的項目。
Dim sess As New NotesSession 
Dim doc As NotesDocument 
Set doc = sess.DocumentContext 
’獲得欲檢索的數(shù)據(jù)庫,存放在數(shù)組ArrNsf內: 
ArrNsf= doc.DatabaseName 
’如果沒有輸入檢索條件,則輸出提示信息: 
If Trim(Cstr(doc.Query(0)))="" Then 
Goto EmptyQuery 
End If 
Dim MatchDoc As NotesDocument 
Dim db As NotesDatabase, 
Dim collection As NotesDocumentCollection 
’下列循環(huán)從數(shù)組ArrNsf中取得欲檢索的數(shù)據(jù)庫進行處理: 
For nsfCount=0 To Ubound( ArrNsf ) 
SearchDB=ArrNsf(nsfCount) 
Set db = sess.GetDatabase("",SearchDB) 
’出現(xiàn)錯誤則轉向: 
On Error Goto BadQuery 
’獲得滿足查詢條件的記錄集:
Set collection = db.FTSearch(doc.Query(0),0) 
On Error Goto 0 
’輸出數(shù)據(jù)庫標題: 


’輸出該數(shù)據(jù)庫中滿足條件的記錄個數(shù): 
There are " & Str$(collection.Count) & " matching 
documents

’下列循環(huán)從滿足條件的記錄集中讀取記錄并輸出: 
For i% = 1 To collection.Count 
Set MatchDoc = collection.GetNthDocument(i%) 


’如果文檔包含Subject或Title,則輸出Subject或Title: 
Set item =MatchDoc.GetFirstItem( "Subject" ) 
If ( item Is Nothing ) Then 
Set item = MatchDoc.GetFirstItem( "Title" ) 
End If 
If Not (item Is Nothing) Then 
" & item.Name & ": & item.Text 
End If 
’如果文檔包含Categories,則輸出Categories: 
Set item = MatchDoc.GetFirstItem( "Categories" ) 
If Not (item Is Nothing) Then 
Print item.Name & ": " & item.Text 
End If 
’輸出文檔產生日期和作者: 
createDate = MatchDoc.Created 
Document create date: &createDate 
Authors: 
Forall aAuthor In MatchDoc.Authors 
Print aAuthor 
End Forall 


Next 
Next 
Out: 

Exit Sub 
EmptyQuery: 
Search query can not be empty 
Resume Out 
BadQuery: 
Query is not understandable: " & doc.Query(0) & {" 
Resume Out 
End Sub 
5 總 結
5.1 Web服務的應用越來越廣,其數(shù)據(jù)索引也隨之有增無減。同時,在編寫Web數(shù)據(jù)庫檢索代碼時,既要考慮其安全性,又要確保應用的高質量,致使及時開發(fā)相應的數(shù)據(jù)庫檢索程序越來越迫切。 
5.2 ASP技術是中小型自主開發(fā)網(wǎng)上數(shù)據(jù)庫服務系統(tǒng)工具。本文從Web網(wǎng)上數(shù)據(jù)庫檢索系統(tǒng)的設計出發(fā),探討了如何利用ASP技術進行有效的網(wǎng)上數(shù)據(jù)庫檢索系統(tǒng)的開發(fā)利用,具有較強的現(xiàn)實意義。

參考文獻:
[1] 劉云生.數(shù)據(jù)庫設計與分析[M].武漢:華中理工大學出版社,1993.
[2] 嚴蔚敏,吳偉民.數(shù)據(jù)結構[M].北京:清華大學出版社,2001.
[3] 鄭若忠,寧洪.數(shù)據(jù)庫原理[M].湖南:國防科技大學出版社,1998.
[4] 李大友.數(shù)據(jù)庫原理及應用[M].北京:清華大學出版社,1993.
關鍵字:通訊,北京
About Us - 關于我們 - 服務列表 - 付費指導 - 媒體合作 - 廣告服務 - 版權聲明 - 聯(lián)系我們 - 網(wǎng)站地圖 - 常見問題 - 友情鏈接
Copyright©2014安裝信息網(wǎng) m.78375555.com. All rights reserved.
服務熱線:4000-293-296 聯(lián)系電話:0371-61311617 傳真:0371-55611201 QQ: 郵箱:zgazxxw@126.com 豫ICP備18030500號-4
未經過本站允許,請勿將本站內容傳播或復制
安全聯(lián)盟認證