999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MIDAS的圖書館信息管理系統的構建

2010-08-15 00:44:26姚曦
電腦與電信 2010年9期
關鍵詞:數據庫系統

姚曦

(福建衛生職業技術學院,福建福州350000)

1.引言

1.1 兩層體系結構

以往人們開發系統大都采用客戶機/服務器的兩層結構,在這種模式中,所有的形式邏輯和業務邏輯均駐留在客戶端,而服務器則成為數據庫服務器。這樣一來服務器就變得很“胖”,被稱為“胖客戶端(FatClient)”。它的弊端十分明顯:“胖”客戶端造成更新繁瑣,日常維護十分困難,一旦客戶端的程序發生改變,就必須對所有的客戶端進行修改。并且隨著客戶端的不斷增加,對帶寬與服務器的壓力也越來越大。

1.2 三層體系結構

M IDAS是Multi-tier Distributed Application Services Suite(多層分布式應用程序服務包)的縮寫。三層體系結構即客戶應用程序(表示層),應用程序服務器(業務層),遠程數據庫服務器(數據層)。其中數據層負責存儲數據,可以理解為數據庫服務器。業務層負責從數據庫中獲取數據并檢查其的合法性。表示層也可稱做GUI層,負責在客戶端顯示數據。

M IDAS優點在于使三層結構在邏輯上相互獨立。表示層配置在客戶機中,即在客戶端僅是一些界面設計,沒有具體的應用程序。當要追加新業務時,只需統一在應用程序服務器進行中間件的更新,而不影響其它兩層,實現了“瘦”客戶端,彌補了兩層體系結構的不足。

2.系統的設計思想

本系統以Delphi7.0為主要的開發平臺,MS SQL Server2000作為數據庫服務器,采用Delphi中的M IDAS基本的開發方法,構建了具有三層體系結構的圖書館信息管理系統。系統在客戶端使用基于TCP/IP協議的Delphi TsocketConnection組件連接中間件。在中間件使用多線程連接數據庫,并使用遠程數據模塊(RemoteDataModle)中的Provider接收來自客戶端的Clientdataset組件的請求,并向數據庫查找想要的數據。而后再通過Provider向客戶端的Clientdataset組件送回數據。最后數據存儲在由MS SQL Server2000構建的數據服務器中。

2.1 系統的需求分析

通過調研,確定了圖書館信息管理系統的兩類管理模式:圖書管理員,學生。他們各自擁有權限管理及功能。圖書管理員有5個操作模塊:圖書管理、學生管理、查詢、圖書操作、報表打印。學生有2個操作模塊:圖書信息檢索、學生信息。

2.2 系統的模塊組成

本多層的圖書館管理系統有三個功能模塊來實現。客戶服務器,應用程序服務器,數據庫。他們的實現步驟如下:首先開發遠程應用程序服務器,他負責為客戶服務器提供數據服務。其次開發客戶服務器及客戶端界面,最后連接客戶端應用程序和遠程應用程序服務器。

3.系統的設計與實現

3.1 遠程應用程序服務器的實現

Delphi建立的遠程應用程序服務器要求是一個EXE服務器,它稱為M IDAS應用程序服務器。通常通過以下幾個步驟來建立:1、建立應用程序。2、建立基于TCP/IP的TremoteDataModule的遠程數據模塊。3、在遠程數據模塊中使用ADOQuery組件連接數據庫。4、使用TdataSetProvider組件連接遠程數據模塊之中的數據集組件。5、編譯、運行遠程應用程序服務器。

3.2 遠程應用程序服務器與數據庫的連接

本系統使用TADOConnection組件連接數據庫。如果想建立多個數據源連接,則需要同時使用多個TADOConnection組件,否則只需使用一個TADOConnection組件即可。本系統使用connectionstring連接數據庫。連接的語句為“Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;InitialCatalog=圖書館管理系統;Data Source=yx”其中各參數意義如下:

Provider:數據提供者。因為本系統數據庫為SQL,所以選擇SQLOLEDB.1。

Persist Security Info:設置為“false”時,當連接處于打開狀態時,一些安全信息不會返回。

User ID:用戶登錄數據庫的ID。

Initial Catalog:數據庫的目錄名稱。

Data Source:數據庫服務器的名稱。

3.3 客戶服務器的實現

客戶端使用TClientDataSet通過TCP/IP與遠程應用程序服務器的TdatasetProvider進行連接來獲取數據。使用TClientDataSet的ApplyUpdates方法來保存對數據庫的更新操作。其中TClientDataSet是個存在于內存中的“虛擬表”,它具有緩沖的作用,因此對數據庫的操作非常快。

3.4 數據的顯示操作

本系統在客戶服務器上使用Dbgrid來顯示數據,利用Dbgrid中的Dataset連接ClientDataSet,而不是直接連接到數據源。以往當需要在客戶服務器上顯示查找的記錄時,會訪問數據庫依次查詢各條記錄,直至最后一條。這就造成每次顯示數據都必須訪問數據庫,當多客戶端或多次操作時,數據庫的開銷就很大。Dbgrid的優點在于可通過設置ClientDataSet中的PacketRecords選項可以選擇下載多少的數據至內存,并直接在內存中進行查詢操作,無需每次操作都訪問數據庫,極大減少了數據庫的開銷,滿足了多客戶端的需求,提高了系統的負載能力。具體的操作步驟如下:

在客戶服務器中建立三個TclientDataset,在遠程應用程序服務器中建立兩個TDataSetProvider,兩個ADOQury。其中clientDataset1連接Datasetprocider1,DataSetProvider1的數據集為ADOQury1,clientDataset2連接的是Datasetprocide2,DataSetProvider2的數據集為ADOQury2,兩個ADOQury的SQL string語句都是Select*From Notebook(從圖書記錄表中選取所有的信息)。ClientDataset3沒有連接任何其它數據組件。

如果用戶要搜索以“明月”為開頭的數據,那么可能會找到“明月夜”,“明月天”這些數據,但如果直接把數據添加到clientDataset1中,考慮到clientDataset1也許已經存在這些數據,clientDataset1中的數據就會重復。所以必須對clientDataset1進行檢查。如果直接在clientDataset1進行檢查,那么clientDataset1會到數據庫下載所有的數據。因此需要一個無連接任何組件的clientDataset3。把clientDataset1中的數據指定給clientDataset3,用CheckData方法來比較兩個clientDataset的數據是否相同,如果找到相同的數據則在clientDataset2中刪除,最后把clientDataset2中的數據重新更新至clientDataset1即可。

3.6 數據的更新操作

數據的更新操作一般可以分為增加,修改和刪除。本系統使用TclientDataSet組件中的的Insert,Edit,Delete等方法來更新數據,然后調用Post。但與兩層體系結構不一樣的地方在于:調用Post后,實際上并沒有對數據庫服務器中的數據進行更新,而是將更新的內容存儲在客戶服務器的內存中。最后必須調用ApplyUpdates來執行更新操作后,才把數據真正地更新到數據庫服務器。同時還可以為ApplyUpdates設置一個數值來設置容錯率。數值的大小代表了容錯率的高低,并設置出現錯誤時事務的處理方法來提高系統的安全性。

4.結束語

近年來,隨著計算機網絡的發展,對信息的需求越來越大。隨之人們對數據處理的要求也越來越高。不僅要求高負荷,也要求高可靠性和安全性。從長遠看,M IDAS的數據庫結構將會慢慢取代傳統的兩層數據庫結構,成為開發數據庫系統的關鍵技術,為數據處理提高安全穩固的保障。基于這種想法,本文闡述了分布式數據結構的基本結構,對其進行了研究,分析了它的優點。并在研究的基礎上,論述了一個基于M IDAS的圖書館信息管理系統。給出了需求分析和具體的實現方法與主要技術。

[1] W illiam Y.Arms.數字圖書館概論[M].電子工業出版社,2001.

[2] 王志梅.關系數據庫基礎與技術[M].國防工業出版社,2005.

[3] 董良,高磊,朱明峰,高忠濤.深入淺出Delphi6[M].清華大學出版社,2002.

[4] 李維.Delphi5.X ADO/MTS/COM+高級程序設計篇[M].機械工業出版社,2000.

[5] 李維.DELPHI5.X分布式多層應用系統篇[M].械工業出版社,2000.

[6] Arco Cantu.Mastering Delphi7.oel Fugazzotto.2003.

猜你喜歡
數據庫系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
數據庫
財經(2016年3期)2016-03-07 07:44:46
主站蜘蛛池模板: 国产成人AV男人的天堂| 国模视频一区二区| 亚洲男女在线| 国产女人在线观看| 国产在线拍偷自揄观看视频网站| 亚洲成人在线免费| 2021国产在线视频| 成年人午夜免费视频| 国产成人做受免费视频| 午夜不卡福利| 国产毛片基地| 先锋资源久久| h视频在线观看网站| 直接黄91麻豆网站| 欧美激情视频在线观看一区| 日韩高清中文字幕| 999福利激情视频 | 国产一区二区人大臿蕉香蕉| 在线看片免费人成视久网下载| 久久香蕉国产线看精品| 免费a级毛片视频| 国产成人福利在线| 亚洲欧洲一区二区三区| 国产精品高清国产三级囯产AV| 亚洲天堂高清| 日韩高清一区 | 9cao视频精品| 亚洲成av人无码综合在线观看| 色有码无码视频| 日韩精品一区二区三区大桥未久| 日韩精品专区免费无码aⅴ| 色综合成人| 久久久久青草线综合超碰| 99久久免费精品特色大片| 天天干天天色综合网| 91亚洲精选| 欧美精品xx| 性视频一区| 91啪在线| 精品久久综合1区2区3区激情| 欧美日本不卡| 国产中文一区二区苍井空| 国产成人精品视频一区视频二区| 亚洲一区第一页| 伦精品一区二区三区视频| 精品无码一区二区三区电影 | 国产麻豆永久视频| 99在线免费播放| 欧美日本中文| 欧美国产日韩另类| 国产粉嫩粉嫩的18在线播放91| 亚洲国产天堂在线观看| 国产精品久久自在自线观看| 国产激情在线视频| 欧美成人怡春院在线激情| 久久久精品无码一区二区三区| 久久婷婷综合色一区二区| 丁香六月综合网| 五月天久久综合| 久久伊人色| 自拍中文字幕| 好紧好深好大乳无码中文字幕| 国产av剧情无码精品色午夜| 青青热久免费精品视频6| 亚洲第一视频网| 国产在线观看91精品亚瑟| 在线欧美日韩| 91在线中文| 成人在线天堂| 97狠狠操| 日日拍夜夜嗷嗷叫国产| 日韩黄色大片免费看| 影音先锋丝袜制服| 中文字幕中文字字幕码一二区| 日韩久久精品无码aV| 国产青青操| 日韩小视频在线观看| 免费高清毛片| 久草热视频在线| 中文无码精品A∨在线观看不卡| 欧美日韩va| 99视频有精品视频免费观看|