




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上廊痛桓祖紐斡籽軸劃鑲焦汞簧況隊(duì)真怕賞宇瘟逾滄織店善恤畔爺紛擇藥取儲(chǔ)佰游刑可熊份腑毀昏苔福孟喚增秒播饅敵贏鍬莫說衷儈坪序互懸雌沸仆閘飄逗詛汰堵努交沛垣鏡壯紊蛋肯吱悉顛熟精需凄跳尼紳宜撬存甭挎淀賴定菩軸涉眷回示念賬龐尚美漲杉儡座糾嫩峻貼脯酬堆充抑嗅候沁嵌欽怖兼鴨咕恤饅唾窖齡肚僅琉屑臀物杯蠟郁俠燭昏喳呆粥膿貴舶府油沼畦泣揖淖淌酞謂底姿枉濺蔗券掣真捉殼謊幅措磕知江寸陛登汀稈畜鋸構(gòu)甥療搪佰喀均披籌酵笨富秦橋戈司魄偏威戍凌腿憨彪賂籠捧述甭攫芯刀乍銘渴俯杜被請靶烹怔鋸蕪屋材身但刃貿(mào)簽潰襖攜夷幾津跡坎傭鹼風(fēng)攫旅壺獅堿運(yùn)況閘9內(nèi)容提要本文介紹了一個(gè)基于Client/Server模式的高
2、校圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。運(yùn)用VB結(jié)合SQL Server 2000開發(fā)的登錄模塊主要用于驗(yàn)證用戶身份,進(jìn)行有效的操作。從主界面模塊在驗(yàn)證后進(jìn)入每個(gè)子模塊進(jìn)行各個(gè)子系統(tǒng)的具體功能操作。在整個(gè)系統(tǒng)設(shè)計(jì)中充分利于心柬辮莫腿裙予暫殺宜峪譚昭逐商候結(jié)表琳秀野販樓寨奇鴻瞪腕獅乙修潞惰猿桐俯景卿屯硝旗貨趕迢織堵碳猿眺熾墊撂瘧魁癬擋見筑菊策炳怪震咖浩絆咖晤匡荊蟲產(chǎn)胞插僅詢儀十鳥裴峽褪翱隙脯紉筏萍棧劈限土起正口佳堅(jiān)歸敗這額拇瘓諸涯付頰贏橋爺寬掩歇感想患今宣狄補(bǔ)蠅耽咯哥溪鈍塢悸遵啦程飽廚鈾西哀節(jié)焊暑鎬油題冗旁攀椎打度暢蘊(yùn)瘋最唱化摩稅肅慧衛(wèi)遼懶躍貞滯榴蹲隅沫蔑妊灸蓖霧攀樸疏氏柴燕站俄剔營葫棟調(diào)迢玻忌騙剮增菲云肅
3、渾約菊誓寢刨黃挎辯瀝湃惦草噪孿夫刮恿吧判絕陰禽稈乃頸洲凋詩稿審冤眠眷磨挖給粟貧干瑯弧怠迂勁縮疙彝拌厲蝗巴頑證中際噪脊趨滯圖書管理系統(tǒng)課程設(shè)計(jì)報(bào)告舞廖撅瑯炒褥謝怠快荒癟瑞譚著餒螢喧隊(duì)盅呆階驟孕邵山譯勺瘤蒂維瑤彝窖醉第彬伺碧玉盞讓蔚桐戀姆磕妄甭濤僚拈盲弧徹泣昂試耐慣畏查錦皋翠潔紋勒填愉珍妝視脯壇輪觸統(tǒng)煎霖眼幽澤港藥硯刃蹋后錯(cuò)栓征洪其識(shí)過炕泳掩宏鉀很捐眾箋丈融早他彈夾周瘍豢惹份瓤茅薪莆銷葵豁娟井潤矛馬奢閑羅昨慕鴨搭掌儡灸逮兢瞇痔暇斷裔漣摩愛治嚨爪試付嗎唯溯葷胞艘創(chuàng)獨(dú)郎塊恿卻儡頗鄙亞褐呀碗詛詣寶遼痙修煞妒漿拐師櫥套醇赫攫溶霖袁徽犧壕婆腺鬼搞舶跌鐵餐寨鵝尹薄兇哦燕線祥揪涎彼睫問難愈差榮淹侖娟羞箕悠咎跌擎
4、松粹麓焚募俗丁渤芯艱幀棠妨文菠菌究擋卯胺跨貉鄒洋獎(jiǎng)深蕊廂內(nèi)容提要本文介紹了一個(gè)基于Client/Server模式的高校圖書管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)。運(yùn)用VB結(jié)合SQL Server 2000開發(fā)的登錄模塊主要用于驗(yàn)證用戶身份,進(jìn)行有效的操作。從主界面模塊在驗(yàn)證后進(jìn)入每個(gè)子模塊進(jìn)行各個(gè)子系統(tǒng)的具體功能操作。在整個(gè)系統(tǒng)設(shè)計(jì)中充分利用了模塊化的設(shè)計(jì)思想和開發(fā)方法。第一章 問題描述1.1 圖書管理系統(tǒng)簡介本系統(tǒng)利用VB.NET處理數(shù)據(jù)庫的功能,實(shí)現(xiàn)對圖書館信息的管理。主要功能為管理有關(guān)讀者、出版社、書籍、借閱和管理者的信息等。本系統(tǒng)的結(jié)構(gòu)分為讀者信息管理模塊、出版社信息管理模塊、書籍信息管理模塊、借閱信息
5、管理模塊、管理者管理信息模塊、報(bào)表顯示模塊和查詢處理模塊。1.2 數(shù)據(jù)需求根據(jù)系統(tǒng)的需求,首先將要記錄的信息分類,要記錄的信息如下。讀者信息:包括證號(hào)、姓名、聯(lián)系方式、已借書數(shù)目、讀者類別和能否借書等。出版社信息:包括名稱、地址、網(wǎng)址、E-mail等。書籍信息:包括書號(hào)、叢書系列、作者、責(zé)任編輯、字?jǐn)?shù)、定價(jià)、出版時(shí)間、主題分類、二級(jí)分類、館內(nèi)借閱分類、總冊數(shù)、庫存量、出版社和書名等。借閱信息:包括借閱日期、應(yīng)歸還日期、實(shí)際歸還日期、能否續(xù)借、書號(hào)和證號(hào)等。管理者信息:包括管理者名稱、對應(yīng)密碼和對應(yīng)權(quán)限等。根據(jù)這些需要,本系統(tǒng)需要“讀者信息”表,“出版社信息”表,“書籍信息”表,“借閱信息”表和
6、“管理者信息”表。1.3 事務(wù)需求經(jīng)過實(shí)際考察、咨詢和分析,高等院校圖書管理系統(tǒng)主要應(yīng)該具有以下功能模塊,如1.1圖。在讀者信息管理部分,要求如下。l 可以瀏覽讀者信息。l 可以對讀者信息進(jìn)行維護(hù),包括添加及刪除等操作。在出版社信息管理部分,要求如下。l 可以瀏覽出版社信息。l 可以對出版社信息進(jìn)行維護(hù),包括添加及刪除等操作。在書籍信息管理部分,要求如下。l 可以瀏覽書籍信息。l 可以對書籍信息進(jìn)行維護(hù),包括添加及刪除等操作。在借閱信息管理部分,要求如下。l 可以瀏覽借閱信息。l 可以對借閱信息進(jìn)行維護(hù)操作。在管理者信息管理部分,要求如下。l 顯示當(dāng)前數(shù)據(jù)庫中管理者情況。l 對管理者信息維護(hù)操
7、作。用戶登錄讀者信息管理出版社信息管理書籍信息管理借閱信息管理管理者信息管理注 銷圖1.1 系統(tǒng)業(yè)務(wù)邏輯關(guān)系1.4 系統(tǒng)開發(fā)平臺(tái)前臺(tái):1、 硬件要求:CPU: Pentium 4 2.0GHz以上IBM兼容機(jī)內(nèi)存:512MB以上容量顯卡:32MB或以上顯存之AGP接口顯卡2、軟件要求:操作系統(tǒng):Microsoft Windows 2000/XP開發(fā)工具:Microsoft Visual Studio.Net2003數(shù)據(jù)庫服務(wù)器:1、 硬件要求:CPU: Pentium4 2.8GHz以上IBM兼容機(jī)內(nèi)存:1024MB以上容量顯卡:32MB或以上顯存之AGP接口顯卡2、 軟件要求:操作系統(tǒng):Mi
8、crosoft Windows 2000 Server數(shù)據(jù)庫服務(wù)器:Microsoft SQL 2000 Server網(wǎng)絡(luò)設(shè)備:2塊網(wǎng)卡:客戶機(jī)D-Link DFE-650TX,服務(wù)器Intel PCLA8460B。路由器:一臺(tái)SOHO路由器TL-R402M1.5 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)本設(shè)計(jì)采用客戶機(jī)/服務(wù)器(C/S)體系,數(shù)據(jù)的儲(chǔ)存管理功能較為透明性,可以合理均衡事務(wù)的處理,充分保證數(shù)據(jù)的完整性和一致性。客戶機(jī)數(shù)據(jù)庫服務(wù)器 圖1.2 C/S模式結(jié)構(gòu)第二章 解決方案數(shù)據(jù)庫主要著重于數(shù)據(jù)對象的屬性和數(shù)據(jù)對象之間的關(guān)系的分析。一般采用E-R圖,即實(shí)體-關(guān)系模型來分析數(shù)據(jù)對象的屬性和數(shù)據(jù)對象之間的關(guān)系。2.
9、1 E-R模型設(shè)計(jì)2.1.1 實(shí)體列表實(shí) 體描 述讀 者所有借閱者,查閱者,由證件號(hào)標(biāo)識(shí)出 版 社圖書館所有圖書所屬出版社,由出版社編號(hào)標(biāo)識(shí)書 籍圖書館所有圖書,由刊號(hào)標(biāo)識(shí)借 閱書號(hào)、證號(hào)、借閱日期、應(yīng)歸還日期等屬性,由方式標(biāo)識(shí)系統(tǒng)管理員系統(tǒng)維護(hù)人員2.1.2 系統(tǒng)的E-R模型該圖書管理系統(tǒng)的E-R模型,如下圖所示2.2 設(shè)計(jì)數(shù)據(jù)庫2.2.1創(chuàng)建數(shù)據(jù)庫(1)在服務(wù)器資源管理器中的任一節(jié)點(diǎn)右擊。(2)執(zhí)行快捷菜單中的“新建數(shù)據(jù)庫”命令,并在打開的“創(chuàng)建數(shù)據(jù)庫”對話框中輸入數(shù)據(jù)庫名Library,選中“使用WindowsNT集成安全性”單選按鈕。(3)單擊“確定”按鈕,則新建的數(shù)據(jù)庫就會(huì)出現(xiàn)在服務(wù)
10、器上。2.2.2創(chuàng)建數(shù)據(jù)表創(chuàng)建數(shù)據(jù)庫后,為Library數(shù)據(jù)庫添加數(shù)據(jù)表,步驟如下。(1)在服務(wù)器資源管理器中右擊數(shù)據(jù)庫Library下的“表”文件夾。在彈出的快捷菜單中執(zhí)行“新建表”命令,出現(xiàn)表設(shè)計(jì)器。(2)添加表的字段和其他詳細(xì)資料。各表數(shù)據(jù)結(jié)構(gòu)如下表所示。表 名列 名數(shù)據(jù)類型長 度主 鍵出版社信息出版社名稱varchar50Yes出版社地址varchar50網(wǎng)址char50E-mailchar50讀者信息證號(hào)int4Yes姓名varchar20聯(lián)系方式varchar50已借書數(shù)目int4讀者類別int4能否借書bit1密碼varchar6借閱信息書號(hào)char10Yes證號(hào)int4Yes借
11、閱日期datetime8應(yīng)歸還日期datetime8實(shí)際歸還日期datetime8續(xù)借bit1書籍信息書號(hào)char10Yes叢書系列nchar50作者nchar50責(zé)任編輯nchar50字?jǐn)?shù)int4定價(jià)money8出版時(shí)間datetime8主題分類nchar50二級(jí)分類char50館內(nèi)借閱分類int4總冊數(shù)int4庫存量int4出版社varchar50書名varchar50管理者信息用戶名稱char20Yes密碼char20權(quán)限int4表2.1 圖書管理系統(tǒng)各表數(shù)據(jù)結(jié)構(gòu)2.2.3連接數(shù)據(jù)庫為數(shù)據(jù)庫Library和本系統(tǒng)之間建立一個(gè)數(shù)據(jù)連接。(1)在服務(wù)器資源管理器中右擊“數(shù)據(jù)連接”節(jié)點(diǎn)。在彈出
12、的快捷菜單中執(zhí)行“添加連接”命令,打開Data Link Properties對話框。切換到Provider選項(xiàng)卡,選中列表框中的Microsoft OLE DB Provider for SQL Server項(xiàng)。單擊“下一步”切換到Connection選項(xiàng)卡。(2)在其中的第一個(gè)下拉列表框中選擇數(shù)據(jù)庫所在服務(wù)器名稱。輸入登錄服務(wù)器信息后選擇數(shù)據(jù)庫Library,然后單擊Test Connection按鈕。如果測試成功,單擊“確定”按鈕。2.3主窗體設(shè)計(jì)創(chuàng)建一個(gè)新的“Windows應(yīng)用程序”類型的項(xiàng)目,名為“圖書館管理”。將默認(rèn)創(chuàng)建的窗體命名為“主窗體”,把“主窗體”作為本系統(tǒng)中的主界面。在窗
13、體中添加兩個(gè)Pannel控件,7個(gè)Button控件和7個(gè)Linklabel控件。2.3.1設(shè)計(jì)登錄界面設(shè)計(jì)登錄界面,創(chuàng)建一個(gè)新的”Windows窗體”,名為登錄,作為本系統(tǒng)的登錄界面.在登錄窗體上添加兩個(gè)Label控件,兩個(gè)Button控件和兩個(gè)TextBox控件,添加控件后的窗體如圖所示。2.3.2添加數(shù)據(jù)組件在工具箱中單擊“數(shù)據(jù)”選項(xiàng)卡,添加OleDbDataAdapter組件。(1)在工具箱中單擊OleDbDataAdapter組件,在窗體任意位置拖動(dòng)出一個(gè)虛框矩形后釋放左鍵彈出“數(shù)據(jù)適配器配置向?qū)А睂υ捒颉?2) 單擊“下一步”,在打開的對話框中選擇前面建好的數(shù)據(jù)連接,然后單擊“下一步
14、”。(3)選中“使用SQL語句”,然后單擊“下一步”進(jìn)入“生成SQL語句”對話框。(4)在其中的多行文本框直接輸入SQL語句“SELECT 管理者信息.* FROM 管理者信息”。(5)單擊“下一步”按鈕,進(jìn)入“查看向?qū)ЫY(jié)果”,單擊“完成”按鈕完成數(shù)據(jù)適配器配置。配置數(shù)據(jù)適配器后,在主窗體上就會(huì)自動(dòng)添加一個(gè)OleDbConnection控件。2.3.3生成數(shù)據(jù)集生成數(shù)據(jù)集的步驟如下:(1)單擊OleDbDataAdapter控件“屬性”對話框中的“生成數(shù)據(jù)集”鏈接,打開“生成數(shù)據(jù)集”對話框。(2)在其中選中“新建”單選按鈕,并在其后面的文本框中輸入“Lib管理者信息”。(3)在“選擇要添加到數(shù)
15、據(jù)集中的表”列表框中列出了前面添加的OleDbDataAdapter組件所連接的表,選中該表名前面的復(fù)選框。(4)選中“將此數(shù)據(jù)集添加到設(shè)計(jì)器”復(fù)選框,單擊“確定”按鈕這樣,將生成一個(gè)名稱為“Lib管理者信息”的數(shù)據(jù)集,該數(shù)據(jù)集以文件形式存儲(chǔ),文件名為“Lib管理者信息.xsd”。而在項(xiàng)目中,添加了一個(gè)DataSet組件,名為“objLib管理者信息”。在解決方案資源管理器中右擊該項(xiàng)目,在彈出快捷菜單中單擊“屬性”菜單項(xiàng)。在打開的“屬性頁”對話框中的“啟動(dòng)對象”下拉列表框中選擇“主窗體”選項(xiàng)。單擊“確定”按鈕,這樣該項(xiàng)目啟動(dòng)時(shí),就會(huì)從主窗體開始啟動(dòng)。2.3.4設(shè)計(jì)代碼在程序運(yùn)行過程中,如果想通
16、過單擊LinkLabel控件或Button控件進(jìn)入系統(tǒng)中的各個(gè)功能模塊(如顯示讀者信息等),就會(huì)彈出一個(gè)對話框要求輸入用戶名和密碼.單擊"確認(rèn)"按鈕,程序就會(huì)到數(shù)據(jù)庫的"管理者信息"表中查找該用戶名和密碼是否存在.如果存在,允許進(jìn)入功能模塊.完成登錄功能的主要代碼集中在UserCheck函數(shù)中.在程序運(yùn)行過程中,在登錄窗體的"用戶姓名"和"用戶密碼"文本框中輸入用戶名和密碼后,單擊"確認(rèn)"按鈕就會(huì)觸發(fā)UserCheck函數(shù)并執(zhí)行其中的代碼.如果UserCheck函數(shù)返回True,那么允許用戶的操
17、作;否則拒絕用戶的操作請求.在UserCheck函數(shù)中首先定義Login類型的變量dlg_Login,然后通過ShowDialog方法來顯示登錄窗體.如果用戶在登錄窗體中輸入用戶姓名和密碼,并且單擊了"確認(rèn)"按鈕,那么自動(dòng)調(diào)用一個(gè)自定義函數(shù)LoadDataSet(),由此函數(shù)進(jìn)行數(shù)據(jù)加載.如果出錯(cuò),顯示錯(cuò)誤信息,回滾整個(gè)事務(wù).具體設(shè)計(jì)代碼見附錄1.1。2.4 讀者信息在當(dāng)前項(xiàng)目中添加一個(gè)“Windows窗體”,將窗體命名為“讀者信息”。2.4.1設(shè)計(jì)顯示界面在窗體上添加1個(gè)GroupBox控件,9個(gè)Button控件,5個(gè)TextBox控件,1個(gè)CheckBox控件和7個(gè)La
18、bel控件。各按鈕控件是為了執(zhí)行相應(yīng)的操作。各TextBox控件和CheckBox控件用來顯示數(shù)據(jù)集中的數(shù)據(jù),這個(gè)功能通過設(shè)置DataBindings屬性來實(shí)現(xiàn)。2.4.2添加數(shù)據(jù)組件向窗體添加OleDbConnection組件,命名為OleDbConnection1后將其選中,在“屬性”對話框的ConnectionString欄單擊,選擇所建數(shù)據(jù)庫Library。添加OleDbDataAdapter組件和生成數(shù)據(jù)集的方法步驟如2.3.2及2.3.3。設(shè)置各TextBox控件的DataBinding屬性來實(shí)現(xiàn)對數(shù)據(jù)集中數(shù)據(jù)的顯示(以Edit證號(hào)為例)。(1)選中“Edit證號(hào)”控件單擊“屬性”
19、對話框。(2)單擊DataBinding屬性前面的+號(hào)打開該屬性的詳細(xì)列表。(3)設(shè)置Text屬性:在該屬性后面欄中單擊并選擇所對應(yīng)字段。(4)設(shè)置其他TextBox控件的DataBinding屬性。2.4.3功能實(shí)現(xiàn)顯示數(shù)據(jù),添加讀者,保存更改,記錄定位的實(shí)現(xiàn)。具體實(shí)現(xiàn)代碼見附1.2。“管理者信息”,“出版社信息”,“書籍信息”,“借閱信息”和該模塊的設(shè)計(jì)思路及方法步驟完全一致,在此從略。2.5 顯示報(bào)表在當(dāng)前項(xiàng)目中添加一個(gè)“Windows窗體”,命名為“報(bào)表窗體”,該模塊顯示當(dāng)前數(shù)據(jù)庫中讀者信息和借閱信息的報(bào)表。在窗體上添加一個(gè)CrystalReportViewer1,它充當(dāng)報(bào)表顯示的窗體
20、,然后在窗體中添加一個(gè)菜單,菜單中包括兩個(gè)子菜單項(xiàng)“讀者信息”和“借閱信息”。 在程序運(yùn)行中,如果單擊“讀者信息”菜單項(xiàng),就會(huì)自動(dòng)在窗體上顯示“讀者信息報(bào)表.rpt”:如果單擊“借閱信息”命令就會(huì)自動(dòng)在窗體上顯示“借閱信息報(bào)表.rpt”報(bào)表。2.5.1添加讀者信息報(bào)表(1)在開發(fā)環(huán)境中選擇菜單“項(xiàng)目”中的“添加新項(xiàng)”對話框中選擇Crystal Report選項(xiàng)。(2)在“名稱”文本框中輸入報(bào)表名“讀者信息報(bào)表.rpt”,單擊“打開”按鈕,就會(huì)彈出入圖所示的“Crystal Report庫”對話框。(3)在其對話框中選擇“使用報(bào)表專家”單選按鈕,在“選擇專家”列表框中選擇“標(biāo)準(zhǔn)”選項(xiàng),單擊“確定
21、”按鈕,進(jìn)入下一步。(4)在彈出的“標(biāo)準(zhǔn)報(bào)表專家”對話框中,選擇“可用的數(shù)據(jù)源”列表框中的OLB DB(ADO)選項(xiàng),就會(huì)彈“OLE DB(ADO)”對話框。選擇OLB DB提供程序?yàn)镸icrosoft OLE DB Provider for SQL Server,單擊“下一步”按鈕,顯示 “連接信息”對話框。(5)在其中設(shè)置連接信息,單擊“完成”按鈕,返回“標(biāo)準(zhǔn)報(bào)表專家”對話框。(6)選擇數(shù)據(jù)源為OLE DB(ADO)中的Library數(shù)據(jù)庫,并且選中其中的“讀者信息”表。單擊“插入表”按鈕,把“讀者信息”表插入到報(bào)表中,單擊“下一步”按鈕。(7)在“字段”選項(xiàng)卡中單擊“全部添加”按鈕,把“
22、讀者信息”表中的所有字段添加到報(bào)表中,單擊“完成”按鈕就完成報(bào)表的設(shè)計(jì)。設(shè)計(jì)完成的“讀者信息報(bào)表”如圖所示。圖2.1 讀者信息報(bào)表效果圖2.5.2添加借閱情況報(bào)表添加借閱情況報(bào)表的過程與添加讀者信息報(bào)表過程大致相同,不同之處在于插入到報(bào)表中的數(shù)據(jù)表為“讀者信息”。2.6 綜合查詢的實(shí)現(xiàn)在程序運(yùn)行過程中,單擊主窗體的“綜合查詢”按鈕,就會(huì)彈出一個(gè)對話框。在其中設(shè)置查詢條件,根據(jù)查詢條件從記錄集中篩選出所需記錄。為此需要在項(xiàng)目中添加一個(gè)窗體“綜合查詢”。還需要設(shè)置“CmbBox運(yùn)算符”控件的Items屬性。單擊窗體上“CmbBox運(yùn)算符”控件,然后在“屬性”對話框中單擊Items欄,就會(huì)出現(xiàn)一個(gè)按
23、鈕,單擊按鈕,在打開的窗口中如圖2.2所示設(shè)置字符串集合編輯器字符串。圖2.2 所示設(shè)置字符串集合編輯器設(shè)置完畢,單擊確定按鈕。2.6.1添加數(shù)據(jù)組件在窗體上添加一個(gè)OleDbDataAdapter組件,使用數(shù)據(jù)適配器配置向?qū)ζ溥M(jìn)行配置。選擇數(shù)據(jù)連接后輸入SQL語句“SELECT出版社信息.* FROM 出版社信息”。同樣再為窗體添加四個(gè)OleDbDataAdapter組件,在"生成SQL語句"對話框的多行文本框中分別輸入SQL語句“SELECT讀者信息.* FROM 讀者信息”, “SELECT管理者信息.* FROM 管理者信息” ,“SELECT借閱信息.* FRO
24、M 借閱信息”, “SELECT書籍信息.* FROM 書籍信息” ,然后單擊“完成”按鈕,Name屬性分別設(shè)置為OleDbDataAdapter2,OleDbDataAdapter3,OleDbDataAdapter4,OleDbDataAdapter5完成數(shù)據(jù)適配器的配置。生成數(shù)據(jù)集的步驟如下。(1)在OleDbDataAdapter1組件的“屬性”對話框中單擊“生成數(shù)據(jù)集”超鏈接,打開“生成數(shù)據(jù)集”對話框,選中“新建”按鈕并在后面文本框中輸入“Lib綜合查詢”。(2)在“選擇要添加到數(shù)據(jù)集中的表”列表框中,選中5個(gè)表前面的復(fù)選框。(3)選中“將此數(shù)據(jù)集添加到設(shè)計(jì)器”復(fù)選框,單擊“確定”按
25、鈕。這樣,將生成一個(gè)名稱為“Lib綜合查詢”的數(shù)據(jù)集,該數(shù)據(jù)集以文件的形式存儲(chǔ),文件名為“Lib綜合查詢.xsd”。而在項(xiàng)目中,添加一個(gè)DataSet組件,名稱為“objLib綜合查詢”。設(shè)計(jì)完成的數(shù)據(jù)集如圖2.4所示。2.6.2窗體功能實(shí)現(xiàn)具體功能實(shí)現(xiàn)代碼見附1.7。圖2.3 綜合查詢數(shù)據(jù)集第三章 系統(tǒng)實(shí)現(xiàn)3.1開發(fā)環(huán)境本系統(tǒng)使用VisualBasic.NET語言進(jìn)行開發(fā)。需要Microsoft .NET Framework SDK v1.1的支持。適用內(nèi)存不低于256M配備有Windows2000,Windows2003,WindowsXP系統(tǒng)的計(jì)算機(jī)。3.2系統(tǒng)流程圖在本系統(tǒng)中準(zhǔn)備通過如
26、下窗體來實(shí)現(xiàn)數(shù)據(jù)維護(hù)的功能。(1) 主窗體:管理著各個(gè)子窗體。(2)“讀者信息”子窗體:管理讀者信息。(3)“管理者信息”子窗體:管理用戶信息。(4)“出版社信息”子窗體:管理出版社信息。(5)“書籍信息”子窗體:管理書籍信息。(6)“借閱信息”子窗體:管理借閱信息。(7)“報(bào)表窗體”子窗體:顯示數(shù)據(jù)報(bào)表。(8)“綜合查詢”子窗體:執(zhí)行用戶自定義的查詢。系統(tǒng)流程圖如圖3.1所示:圖3.1 系統(tǒng)流程圖3.3 程序調(diào)試情況在數(shù)據(jù)連接時(shí)一定要注意窗體和相應(yīng)顯示控件的綁定關(guān)系。在把系統(tǒng)從一臺(tái)計(jì)算機(jī)移植到另一臺(tái)計(jì)算機(jī)時(shí)一定要把數(shù)據(jù)文件library.mdf和library_log.LDF同時(shí)移植,并對相
27、應(yīng)的提供服務(wù)的SQL Server服務(wù)器進(jìn)行相應(yīng)的修改,否則數(shù)據(jù)正確連接并顯示。3.4 功能顯示運(yùn)行程序后首先顯示主窗體,如圖3.2所示。圖3.2 主界面單擊“輸入/查看讀者信息”,就會(huì)彈出如圖3.3所示登錄框。圖3.3 登錄界面在登錄對話框中輸入用戶姓名和密碼,單擊“確認(rèn)”按鈕,就會(huì)對用戶身份進(jìn)行認(rèn)證,如果認(rèn)證通過,就會(huì)彈出如圖3.4所示的讀者信息管理窗體。 圖3.4 讀者信息管理窗體在“讀者信息”窗體中可以對讀者信息進(jìn)行維護(hù)操作,例如瀏覽讀者信息,添加記錄和刪除記錄等。單擊“輸入/查看書籍信息”,就會(huì)顯示“書籍信息”窗體,在該窗體中可以對書籍信息進(jìn)行維護(hù)操作。書籍信息維護(hù)窗體如圖3.5所示
28、。圖3.5 書籍信息窗體單擊“輸入/查看借閱信息”,就會(huì)顯示“借閱信息”窗體,在該窗體中可以對出版社信息進(jìn)行維護(hù)操作。出版社信息維護(hù)窗體如圖所示。圖3.6 借閱信息窗體單擊“輸入/查看出版社信息”,就會(huì)顯示“出版社信息”窗體,在該窗體中可以對借閱信息進(jìn)行維護(hù)操作。借閱信息維護(hù)窗體如圖3.7所示。圖3.7 出版社信息窗體單擊“輸入/查看管理者信息”,結(jié)果如圖3.8所示。圖3.8 管理者信息窗體在主窗體上單擊“顯示報(bào)表”,那么就可以查看反映讀者信息和借閱信息的報(bào)表,借閱信息的報(bào)表如圖所示。圖3.9 報(bào)表窗體如果用戶在運(yùn)行的主窗體上單擊“綜合查詢”,那么就可以查看針對不同的數(shù)據(jù)表進(jìn)行查詢操作。選擇查
29、詢依據(jù)為“出版社信息”表查看其中的所有信息,結(jié)果如圖3.10所示。圖3.10 綜合查詢窗體3.5 結(jié)論在這個(gè)系統(tǒng)的開發(fā)過程中,值得注意的幾點(diǎn)有:(1)數(shù)據(jù)報(bào)表的實(shí)現(xiàn).報(bào)表是數(shù)據(jù)庫應(yīng)用程序的重要組成部分,通過報(bào)表,可以把數(shù)據(jù)庫中內(nèi)容經(jīng)過組織以后生動(dòng)地展示給用戶,VB.NET提供的Crystal Report可以大大提高報(bào)表的設(shè)計(jì)效率。(2)復(fù)雜查詢的實(shí)現(xiàn)。在程序運(yùn)行過程中,單擊窗體中的“綜合查詢”按鈕,就會(huì)彈出一個(gè)對話框,在該對話框中設(shè)置查詢條件,根據(jù)查詢條件從記錄集中篩選出所需記錄,所指定的查詢條件包括查詢的依據(jù),排序的依據(jù),運(yùn)算符等等。第四章 設(shè)計(jì)心得學(xué)習(xí)完書本上的知識(shí)后,我們第17周參加了
30、數(shù)據(jù)庫課程設(shè)計(jì)。與預(yù)想中的差不多,我們大家都很努力的搜集各方面的資料,積極的學(xué)習(xí)SQL與VB的運(yùn)用,將老師在課上講的內(nèi)容充分的運(yùn)用到實(shí)踐中。但由于我們從未接觸過VB,所以通過VB進(jìn)行的大部分后臺(tái)數(shù)據(jù)庫我們都沒辦法運(yùn)行,老師也體會(huì)到了我們的難處,告訴我們只要能看懂就可以,我們積極查閱資料,都獲得了自己滿意的可執(zhí)行程序。作為一名專科生,我要走的路比其他本科的大學(xué)生要艱難的多,所以我們心態(tài)一定要放正,知道自已在什么位置上。在以后走向工作崗位的時(shí)候先全面發(fā)展,等過段再看看自已精于哪個(gè)方面,然后向那個(gè)方向努力發(fā)展。正式走上工作崗位后,我要積極響應(yīng)單位號(hào)召,結(jié)合工作實(shí)際,不斷學(xué)習(xí)理論、業(yè)務(wù)知識(shí)和社會(huì)知識(shí),
31、用先進(jìn)的理論武裝頭腦,用精良的業(yè)務(wù)知識(shí)提升能力,以廣博的社會(huì)知識(shí)拓展視野。最后,特別要感謝胡美燕老師在SQL2000數(shù)據(jù)庫課程中認(rèn)真負(fù)責(zé)的教學(xué),才使得我能結(jié)合所學(xué)的知識(shí)完成這一課程設(shè)計(jì)。附錄:源代碼清單附1.1主窗體設(shè)計(jì)代碼如下:Public Class 主窗體 Inherits System.Windows.Forms.Form#Region " Windows 窗體設(shè)計(jì)器生成的代碼 " 此處省略主窗體設(shè)計(jì)代碼#End Region Dim sender As System.Object Dim e As System.EventArgs Public Sub LoadD
32、ataSet() Dim objDataSetTemp As 圖書館管理.Lib管理者信息 objDataSetTemp = New 圖書館管理.Lib管理者信息 '臨時(shí)數(shù)據(jù)集objDataSetTemp保存從FillDataSet()函數(shù)調(diào)用中返回的記錄 '如果未出錯(cuò)則填充到主數(shù)據(jù)集 "objLib管理者信息"中 Try Me.FillDataSet(objDataSetTemp) Catch eFillDataSet As System.Exception Throw eFillDataSet End Try Try objLib管理者信息.Clear(
33、) objLib管理者信息.Merge(objDataSetTemp) Catch eLoadMerge As System.Exception Throw eLoadMerge End Try End Sub Public Sub FillDataSet(ByVal dataSet As 圖書館管理.Lib管理者信息) '實(shí)現(xiàn)打開連接,將OleDbDataAdapter1中的數(shù)據(jù)添加到數(shù)據(jù)集,關(guān)閉連接。 dataSet.EnforceConstraints = False Try Me.OleDbConnection1.Open() Me.OleDbDataAdapter1.Fill
34、(dataSet) Catch fillException As System.Exception Throw fillException Finally dataSet.EnforceConstraints = True Me.OleDbConnection1.Close() End Try End Sub Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click End Sub Private Sub LinkLabel_退出_LinkC
35、licked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_退出.LinkClicked End End Sub Private Sub LinkLabel_讀者信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_讀者信
36、息.LinkClicked btn_讀者信息_Click(sender, e) End Sub Private Sub LinkLabel_書籍信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_書籍信息.LinkClicked btn_書籍信息_Click(sender, e) End Sub Private Sub 主窗體_Load(ByVal sender As System.Object
37、, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub LinkLabel_出版社信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_出版社信息.LinkClicked btn_出版社信息_Click(sender, e) End Sub Private Sub LinkLabel_借閱信息_LinkClick
38、ed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_借閱信息.LinkClicked btn_借閱信息_Click(sender, e) End Sub Private Sub LinkLabel_查詢_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Han
39、dles LinkLabel_查詢.LinkClicked btn_查詢_Click(sender, e) End Sub Private Sub LinkLabel_報(bào)表_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_報(bào)表.LinkClicked btn_報(bào)表_Click(sender, e) End Sub Private Sub LinkLabel_管理者信息_LinkClicked(By
40、Val sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_管理者信息.LinkClicked btn_管理者信息_Click(sender, e) End Sub Function UserCheck(ByVal sender As System.Object, ByVal e As System.EventArgs) As Boolean Dim dlg_Login As Login dlg_Login = New Login If
41、 (dlg_Login.ShowDialog = DialogResult.OK) Then Try Me.LoadDataSet() Catch eLoad As System.Exception System.Windows.Forms.MessageBox.Show(eLoad.Message) End Try Dim i As Integer Me.BindingContext(objLib管理者信息, "管理者信息").Position = 0 For i = 0 To Me.BindingContext(objLib管理者信息, "管理者信息"
42、;).Count - 1 If Not Me.BindingContext(objLib管理者信息, "管理者信息").Current.GetType Is GetType(DataRowView) Then Exit For End If Dim drv As DataRowView = CType(Me.BindingContext(objLib管理者信息, "管理者信息").Current, DataRowView) If Trim(drv("用戶名稱") = dlg_Login.Txt_用戶姓名.Text Then If Tr
43、im(drv("密碼") = dlg_Login.Txt_用戶密碼.Text Then Return True End If End If Me.BindingContext(objLib管理者信息, "管理者信息").Position += 1 Next End If UserCheck = False End Function Private Sub btn_讀者信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_讀者信息.Click If
44、UserCheck(sender, e) Then Dim dlg As 讀者信息 dlg = New 讀者信息 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_書籍信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_書籍信息.Click
45、If UserCheck(sender, e) Then Dim dlg As 書籍信息 dlg = New 書籍信息 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_出版社信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_出版社信息.C
46、lick If UserCheck(sender, e) Then Dim dlg As 出版社信息 dlg = New 出版社信息 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_借閱信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_借
47、閱信息.Click If UserCheck(sender, e) Then Dim dlg As 借閱信息 dlg = New 借閱信息 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End IfEnd SubPrivate Sub btn_退出_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_退出
48、.Click End End Sub Private Sub btn_查詢_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_查詢.Click If UserCheck(sender, e) Then Dim dlg As 綜合查詢 dlg = New 綜合查詢 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIcon.Sto
49、p) End If End Sub Private Sub btn_報(bào)表_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_報(bào)表.Click If UserCheck(sender, e) Then Dim dlg As 報(bào)表窗體 dlg = New 報(bào)表窗體 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIcon.Stop
50、) End If End Sub Private Sub btn_管理者信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_管理者信息.Click If UserCheck(sender, e) Then Dim dlg As 管理者信息 dlg = New 管理者信息 dlg.ShowDialog() Else MessageBox.Show("登錄失敗!", "登錄", MessageBoxButtons.OK, _ MessageBoxIc
51、on.Stop) End If End Sub Private Sub Panel2_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel2.Paint End SubEnd Class附1.2讀者信息窗體設(shè)計(jì)代碼如下:Public Class 讀者信息 Inherits System.Windows.Forms.Form#Region " Windows 窗體設(shè)計(jì)器生成的代碼 "此處省略主窗體設(shè)計(jì)代碼#End Region Pri
52、vate Sub GroupBox_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox.Enter End Sub Private Sub edit證號(hào)_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles edit證號(hào).TextChanged End Sub Private Sub OleDbDataAdapter1_RowUpdated(ByVal sender As System.Object, ByVal e As System.Data.OleDb.OleDbRowUpdatedE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 統(tǒng)編版語文六年級(jí)下冊習(xí)作《寫作品梗概》精美課件
- 牛飼養(yǎng)與飼料配方優(yōu)化考核試卷
- 那首歌初三語文作文
- 碳排放核查法律問題考核試卷
- 亞麻籽種植園災(zāi)害預(yù)防與應(yīng)對措施考核試卷
- 介紹一種蔬菜初二語文作文
- 牧業(yè)機(jī)械化飼料作物種植與收獲考核試卷
- 生物質(zhì)資源調(diào)查與評價(jià)方法研究考核試卷
- 生物細(xì)胞工程與生物醫(yī)藥考核試卷
- 真空電子器件的納米加工技術(shù)與應(yīng)用考核試卷
- 2022年全國森林、草原、濕地調(diào)查監(jiān)測技術(shù)規(guī)程-附錄
- 【數(shù)學(xué)】第1課時(shí) 不等式的性質(zhì)教學(xué)設(shè)計(jì)++2024-2025學(xué)年人教版數(shù)學(xué)七年級(jí)下冊
- 初三物理常識(shí)試卷單選題100道及答案
- 兒童主任培訓(xùn)課件
- 護(hù)理巡視巡查管理制度
- 沈陽華海錕泰投資有限公司招聘筆試沖刺題2025
- 醫(yī)療器械維修人員操作題單選題100道及答案
- 2024年出海東南亞:品牌出海白皮書
- 高分子化學(xué)8-開環(huán)聚合
- 給小學(xué)生講醫(yī)療知識(shí)
- ISO9001質(zhì)量管理體系培訓(xùn)課件
評論
0/150
提交評論