




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
利用ASP實(shí)現(xiàn)分布式異構(gòu)數(shù)據(jù)庫(kù)共享服務(wù)的幾點(diǎn)技術(shù)探討
中科院寒區(qū)旱區(qū)環(huán)境與工程研究所張耀南主要內(nèi)容問(wèn)題的提出利用ASP實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的共享訪問(wèn)
利用COM組件共享分布式異構(gòu)數(shù)據(jù)庫(kù)
利用存儲(chǔ)過(guò)程提高ASP對(duì)數(shù)據(jù)庫(kù)的共享速度利用ASP實(shí)現(xiàn)對(duì)共享服務(wù)的跟蹤1.問(wèn)題的提出科學(xué)數(shù)據(jù)庫(kù)事實(shí)上是一個(gè)數(shù)據(jù)庫(kù)群體由于數(shù)據(jù)來(lái)源、格式、分類(lèi)等因素的不同,大多為分布式的異構(gòu)數(shù)據(jù)庫(kù)群。操作系統(tǒng)各異,對(duì)用戶來(lái)講,數(shù)據(jù)庫(kù)的訪問(wèn)復(fù)雜化?;贗nternet的B/S架構(gòu),利用ASP、COM/DCOM組件技術(shù),來(lái)實(shí)現(xiàn)分布式異構(gòu)數(shù)據(jù)庫(kù)群的共享服務(wù)和數(shù)據(jù)共享用戶的跟蹤。2.利用ASP實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的共享訪問(wèn)
在ASP中,用來(lái)存取數(shù)據(jù)庫(kù)的對(duì)象統(tǒng)稱(chēng)ADO(ActiveDataObjects)主要有ConnectionRecordsetCommand三種對(duì)象其中Connection負(fù)責(zé)打開(kāi)或連接數(shù)據(jù)庫(kù)Recordset負(fù)責(zé)存取數(shù)據(jù)表Command負(fù)責(zé)對(duì)數(shù)據(jù)庫(kù)執(zhí)行行動(dòng)查詢(ActionQuery)命令和執(zhí)行SQLServer的存儲(chǔ)過(guò)程(StoredProcedure)。
2.利用ASP實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的共享訪問(wèn)但靠這三個(gè)對(duì)象還是無(wú)法存取數(shù)據(jù)庫(kù)的,還必須具有數(shù)據(jù)庫(kù)存取的驅(qū)動(dòng)程序:OLEDB和ODBC驅(qū)動(dòng)程序
ADOOLEDBJetSQLOracleJetSQLOracleODBCAccessSQLOracleAccessSQLOracleADO層OLEDB層ODBC層數(shù)據(jù)存儲(chǔ)層2.利用ASP實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的共享訪問(wèn)首先建立一個(gè)ADODB.Connection接口的對(duì)象,接著在這一個(gè)對(duì)象上綁定相應(yīng)的數(shù)據(jù)源(可以用有名數(shù)據(jù)源和無(wú)名數(shù)據(jù)源),根據(jù)需要建立或者不建立記錄集,然后在該數(shù)據(jù)源上鏈接用執(zhí)行或打開(kāi)的方法來(lái)對(duì)相應(yīng)的表進(jìn)行操作。Asp訪問(wèn)數(shù)據(jù)庫(kù)的一般方法:
<SetoConn=Server.CreateObject(“ADODB.Connection”)SetoRS=Server.CreateObject(“ADODB.RecordSet”)SetstrConn="Provider=SQLOLEDB;UserID=sa;InitialCatalog=Pubs;DataSource="&request.ServerVariables("SERVER_NAME")
oConn.openstrConnsetORS=oConn.execute(“select*fromtest”)>
2.利用ASP實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的共享訪問(wèn)Access類(lèi)型的數(shù)據(jù)庫(kù)對(duì)象Dimconn,Provider,DBPathSetconn=Server.CreateObject("ADODB.Connection")
Provider="Provider=Microsoft.Jet.OLEDB.4.0;"DBPath="DataSource="&Server.MapPath("數(shù)據(jù)庫(kù)文件名")conn.OpenProvider&DBPathSetCreateAccessRecordset=Server.CreateObject("ADODB.Recordset")CreateAccessRecordset.Open"數(shù)據(jù)表名",conn,2,2
EndFunction
2.利用ASP實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的共享訪問(wèn)建立SQLServer類(lèi)型的數(shù)據(jù)庫(kù)對(duì)象DimParams,conn
SetCreatSQLServerConnection=Nothing
Setconn=Server.CreateObject(“ADODB.Connection”)
Params=“Provider=SQLOLEDB.1”
Params=Params&“;DataSource=”&Computer
Params=Params&“;UserID=”&UserID
Params=Params&“;Password=”&Password
Params=Params&“.InitialCatalog=”&數(shù)據(jù)庫(kù)名稱(chēng)ConnopenParas
SetCreateSQLServerRecordset=Server.CreateObject("ADODB.Recordset")
CreateSQLServerRecordset.Opensource,conn,2,2
EndFunction3.利用COM共享訪問(wèn)分布式異構(gòu)數(shù)據(jù)庫(kù)
在OLEDB下層的ODBC并不是為分布式計(jì)算設(shè)計(jì)的,ODBC僅適用于關(guān)系數(shù)據(jù)庫(kù)。Web本身的無(wú)狀態(tài)性、以及大量訪問(wèn)都使得這種靠保持永久性連接是無(wú)法實(shí)現(xiàn)。COM(ComponentObjectModel)及DCOM(DistributedCOM)實(shí)現(xiàn)了跨網(wǎng)絡(luò)節(jié)點(diǎn)的對(duì)象訪問(wèn)能力。COM/DCOM也逐漸發(fā)展成了Windows系列操作系統(tǒng)的重要組成部分。COM是建立在OSFDCE標(biāo)準(zhǔn)的遠(yuǎn)程方法調(diào)用RPC(RemoteProcedureCall)基礎(chǔ)上的。
3.利用COM共享訪問(wèn)分布式異構(gòu)數(shù)據(jù)庫(kù)In-ProcessObjectClientApplicationLocalObjectProxyRemoteObjectProxyIn-ProcessServerCOMClientProcessRPCRPCLocalObjectLocalServerStubCOMLocalServerProcessRemoteObjectRemoteServerStubCOMRemoteServerProcessRemote
Machine3.利用COM共享訪問(wèn)分布式異構(gòu)數(shù)據(jù)庫(kù)有了上述對(duì)WEB管理服務(wù)器的定義和設(shè)置,可以利用一組COM組件對(duì)象來(lái)完成通過(guò)ASP腳本對(duì)分布式異構(gòu)數(shù)據(jù)庫(kù)的訪問(wèn)。
資源組件文本及二進(jìn)制節(jié)點(diǎn)組件數(shù)據(jù)庫(kù)節(jié)點(diǎn)文件二進(jìn)制數(shù)組件網(wǎng)絡(luò)共享目錄組件目錄收集組件文件收集組件4.用存儲(chǔ)過(guò)程提高ASP對(duì)數(shù)據(jù)庫(kù)的共享速度
對(duì)一些處理過(guò)程,本身的流程較復(fù)雜,使用表格中的數(shù)據(jù)較多,而且要反復(fù)的使用表格中的數(shù)據(jù),但返回的結(jié)果卻很少,就特別適合于使用存儲(chǔ)過(guò)程。存儲(chǔ)過(guò)程被數(shù)據(jù)庫(kù)編譯產(chǎn)生一個(gè)執(zhí)行計(jì)劃,執(zhí)行速度比對(duì)應(yīng)的SQL語(yǔ)句快。存儲(chǔ)過(guò)程在數(shù)據(jù)庫(kù)服務(wù)器端執(zhí)行且使用的數(shù)據(jù)不通過(guò)網(wǎng)絡(luò)的傳輸過(guò)程,從而提高了訪問(wèn)速度。因此可以把某些表的訪問(wèn)封裝在存儲(chǔ)過(guò)程中,然后指定這些表只能被存儲(chǔ)過(guò)程訪問(wèn)。這樣,既可以提高數(shù)據(jù)的速度和安全性,也可以防止一些潛在的危險(xiǎn)的SQL操作。如從某結(jié)點(diǎn)n開(kāi)始找到最上層的父親結(jié)點(diǎn),這種經(jīng)常用到的過(guò)程可以由存儲(chǔ)過(guò)程來(lái)?yè)?dān)當(dāng),在網(wǎng)頁(yè)中重復(fù)使用達(dá)到共享。5.用ASP實(shí)現(xiàn)共享服務(wù)的跟蹤
在ASP中通常使用application對(duì)象制作在線人員的訪問(wèn)情況。首先在global.asa中設(shè)置application(“user_online”)(以下簡(jiǎn)稱(chēng)auo),格式為:
用戶姓名0~用戶名0~上線時(shí)間0~最后刷新時(shí)間0~登錄IP地址0,
用戶姓名1~用戶名1~上線時(shí)間1~最后刷新時(shí)間1~登錄IP地址1......
①將頁(yè)面分隔為兩幀(左右、上下均可以),其中一幀的高度(或?qū)挾龋绻亲笥覂蓭脑挘榱?。②在該隱藏幀中放置一能夠自刷新的頁(yè)面(通過(guò)setTimeout函數(shù)來(lái)reload頁(yè)面)。③在該頁(yè)面的刷新過(guò)程中更新并檢測(cè)用戶相關(guān)信息:
5.用ASP實(shí)現(xiàn)共享服務(wù)的跟蹤·如果該用戶的用戶名不在(instr(auo,"~"&用戶名&"~")<0)auo中那么將該用戶的信息整理后(設(shè)置用戶姓名、用戶名、登陸IP為用戶信息,設(shè)置登陸時(shí)間和最后刷新時(shí)間為當(dāng)前時(shí)間)添加到auo的最后(字符串與操作)?!と绻撚脩舻挠脩裘呀?jīng)存在于auo中,那么更新該用戶的最后刷新時(shí)間為當(dāng)前時(shí)間?!び?jì)算每個(gè)用戶的登陸時(shí)間與最后刷新時(shí)間之間的時(shí)間差,如果大于設(shè)定值(如:7秒)則表明該用戶已經(jīng)下線,則可以從auo中將該用戶刪除。通過(guò)上述思路實(shí)現(xiàn)了在線訪問(wèn)數(shù)據(jù)庫(kù)人員的數(shù)量統(tǒng)計(jì)、在線人員的名稱(chēng)顯示、在線人員的停留時(shí)間顯示并按照停留時(shí)間排序、禁止同一賬號(hào)同時(shí)在不同的機(jī)器(IP地址)上登錄、在線短信息的發(fā)送(增加檢索是否與該用戶想匹配的信息的程序段即可)。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025班組安全培訓(xùn)考試試題附完整答案(奪冠系列)
- 2025年企業(yè)負(fù)責(zé)人安全培訓(xùn)考試試題含答案【培優(yōu)】
- 2025年企業(yè)級(jí)安全培訓(xùn)考試試題附答案(突破訓(xùn)練)
- 2025民間房產(chǎn)抵押借款合同范本下載
- 2025授權(quán)采購(gòu)石油居間合同
- 2025《酒店業(yè)勞動(dòng)合同》
- 2025年新型靜電消除器項(xiàng)目合作計(jì)劃書(shū)
- 2025年建筑防水卷材及制品項(xiàng)目合作計(jì)劃書(shū)
- 2025裝飾設(shè)計(jì)工程承包合同范本模板
- 2025因合同期滿離職信
- SQLSERVER如何配置內(nèi)存提高性能配置方案
- 電視臺(tái)影視拍攝合同協(xié)議
- 裝配式建筑技術(shù)創(chuàng)新與可持續(xù)發(fā)展-全面剖析
- 裝飾公司結(jié)算管理制度
- 實(shí)習(xí)生頂崗實(shí)習(xí)安全教育
- 網(wǎng)絡(luò)災(zāi)難恢復(fù)計(jì)劃試題及答案
- 物業(yè)五一節(jié)前安全教育
- 海員的考試試題及答案
- 2024年全國(guó)高中數(shù)學(xué)聯(lián)賽(浙江預(yù)賽)試題含參考答案
- 人教PEP版(2024)三年級(jí)下冊(cè)英語(yǔ)Unit5 Old toys單元整體教學(xué)設(shè)計(jì)(共6課時(shí))
評(píng)論
0/150
提交評(píng)論