




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、東北石油大學課程設計課程數據庫課程設計題目圖書館信息治理系統院 系 計算機與信息技術學院專業班級信息09-1學生姓名 魏冬冬學生學號 090701140116指導教師2021年 7月東北石油大學課程設計任務書課程數據庫課程設計題目圖書館信息治理系統專業 電子信息科學與技術姓名 魏冬冬 學號 090701140116一、主要內容數據庫課程設計的目的是讓學生綜合運用學過的知識, 開發一個小型的數據 庫信息治理系統. 系統主要實現以下幾個功能:圖書入庫治理;圖書出庫治理; 圖書入庫統計;圖書出庫統計;能查詢各種信息.數據庫的設計包含以下實體:1 .圖書圖書編號、圖書名稱、作者、版次、出版社;2 .書
2、庫書庫編號、名稱、位置;3 .讀者借書證號,姓名,性別,年齡,單位,聯系 ;4 .系統信息用戶名、密碼;二、根本要求:1 .掌握DBMS的根本工作原理;2 .掌握數據庫設計:進行數據需求分析,給出 E-R圖,關系模型,表結構;3 .掌握數據庫實現:建立數據庫和表;進行數據庫鏈接;4 ,掌握系統設計與實現:畫出系統的功能模塊圖,設計出主界面和各窗體;5.按時提交標準課程設計報告.三、主要參考資料:1薩師燎,王珊.數據庫系統概論M.高等教育出版社2000.22李應偉.ASP.NET數據庫高級教程C#篇M.清華大學出版社,2004. 73鄭阿奇.C#實用教程M,電子工業出版社,2021.64唐學忠.
3、SQL Server 2000數據庫教程M,電子工業出版社,2005.55廖信博.Management Information System CaseM機械工業出版社 2005.4完成期限 第19周到第20周指導教師專業負責人2021年 7月 9日第1章概述1.1.1 開發工具的介紹1.1.2 程序設計思想1.第2章需求分析 3.2.1 圖書館信息治理系統概述32.2 系統用戶分析3.2.3 功能需求分析3.第3章數據庫設計與實現4.3.1 數據庫概念模型設計4.3.2 數據庫邏率?設計 5.3.3 數據庫物理設計與實現6.第4章詳細設計:8.4.1 系統模塊設計 8.4.2 關鍵步驟和代碼9
4、.4.3 實現效果15總結21.參考文獻22第1章概述1.1 開發工具的介紹Visual Studio C#Visual Studio 是微軟公司推出的開發環境.是目前最流行的 Windows平臺應用程序開發環 境.Visual Studio 2021 版本于2021年4月12日上市,具集成開發環境(IDE)的界面被 重新設計和組織,變得更加簡單明了. Visual Studio 2021同時帶來了 NET Framework 4.0、 Microsoft Visual Studio 2021 CTP( Community Technology Preview- CTP),并且支持開發面向 W
5、indows 7的應用程序.除了 Microsoft SQL Server ,它還支持IBM DB2和Oracle 數據庫.C#(C Sharp)是微軟(Microsoft) 為.NET Framework量身訂做的程序語言, C#M有 C/C+的強大功能以及 Visual Basic 簡易使用的特性,是第一個組件導向 (Component-oriented)的程序語言,和 C+W Java 一樣亦為對象導向(object-oriented) 程 序語百0SQL server 2005SQL(Structured Query Language),結構化查詢語言.SQL語言的主要功能就是同各種數
6、據 庫建立聯系,進行溝通.根據 ANSI(美國國家標準協會)的規定,SQL被作為關系型數據庫管 理系統的標準語言.SQL語句可以用來執行各種各樣的操作,例如更新數據庫中的數據,從 數據庫中提取數據等.絕大多數流行的關系型數據庫治理系統都采用了SQL語言標準.雖然很多數據庫都對SQLi§句進行了再開發和擴展,但是包括Select, Insert, Update, Delete,Create,以及Drop在內的標準的SQL命令仍然可以被用來完成幾乎所有的數據庫操作.1.2 程序設計思想目前,在高校系部圖書治理中,師生查找圖書都是采用傳統的查詢方法,讓讀者在圖書 分類架上一本本地去查找,這
7、樣不僅很難找到自己所需要的圖書,而且費時費力.而圖書管 理員在辦理借書登記、查詢讀者借書記錄時,治理人員必須在借書記錄上一個個去查找,而 要找到借書記錄并刪除該記錄是件很麻煩的事情.每當新書入庫時,圖書治理員既要填寫新 書入庫卡片,又要填寫新書入庫賬目,不僅工作量大,而且,在新書入庫后要經歷較長的時 問方能借出.另外,有的系部因圖書數量有限,必須對圖書實行限量借閱,因此,要實施彈 性借書方法是件很困難的事.為提升圖書查詢效率,減少系部圖書治理員的工作負擔,有必要開發一個小型圖書治理 軟件來對系部圖書實施有效治理.該系統必須具備以下功能:1、能對各類圖書實行分類治理;2、提供必要的讀者信息;3、
8、能進行各種高級查詢如未還書目的查詢;已還書目的查詢等;4、具有圖書檢索功能;5、能治理登錄系統的圖書治理員等. 這樣不僅能較好地幫助讀者在最短的時間內找到自 己所需要的圖書書目、編號,而且能讓圖書治理員以最高的效率辦理借閱手續.本系統在visual studio 2021 及SQL server 2005 環境下編譯,能完成一些圖書治理 的根本功能,也有待完善.第2章需求分析2.1 圖書館信息治理系統概述在當今社會,隨著計算機的開展及網絡技術的應用,INTERNE及用在全球范圍內的普及. 當今社會正快速向信息化社會前進,信息自動化的作用也越來越大.而在日常生活中信息技 術的不斷融入,在技術越來
9、越先進的同時,我們應該從以前繁瑣的事務中解放出來,來提高了我們的工作效率. 而目前在大的學校的圖書館已經有一整套比擬完整的信息治理系統, 而在一般小型的學校圖書館中 工作大局部還是進行著手工治理,工作起來效率很低,并且不 能及時了解圖書館各類圖書的存庫,學生們比擬需求的圖書難以在短時間里找到、圖書的入 庫和更新比擬麻煩等等,不便于動態及時調整圖書結構.為了更好的適應當前學生的借閱需 求,計算機信息化治理提供應我們的處理信息及時快捷,在工作中不僅減緩了壓力.因此我 們利用計算機提供應我們信息,及時的調整學校圖書館圖書結構,并且對學生們的借閱過程 形成一整化動態的治理.談到治理信息系統,自然離不開
10、數據庫的支持.數據庫技術,是計算機技術的一個重要 的分支.在人類邁向21世紀知識經濟的時候,信息變為經濟開展的戰略資源,信息技術已成 為社會生產力重要的組成局部.人們充分熟悉到,數據庫是信息化社會中信息資源治理與開發 利用的根底.對于一個國家,數據庫的建設規模,使用水平已成為衡量該國信息化程度的重要 標志.2.2 系統用戶分析普通的圖書館用戶借書之前需要查詢圖上的信息及圖書所在的圖書書庫及書庫所在的位 置,需要注冊新的用戶名,可以修改密碼,可以通過本系統借書,還書等操作.系統治理員需要通過本系統添加系統的用戶,需要查詢圖書館的讀者和圖書館治理系統的用 戶,并可以修改本系統普通用戶的密碼.還需要
11、通過本系統進行一些必要的圖書錄入和錄出 工作.2.3 功能需求分析應用本系統需要實現一些簡單的圖書查詢,書庫查詢,普通用戶的借書,還書功能,普 通用戶可以在本系統中注冊,修改登錄密碼操作.本系統的治理員可以應用本系統進行圖書 錄入和錄出操作,修改普通用戶的登錄密碼,治理員還需要查詢讀者及用戶的信息,以及時 了解用戶和讀者的動態.還需要了解書庫中的圖書信息,以確定是否需要在書庫中錄入或錄出圖書.第3章概要設計3.1 數據庫概念模型設計普通用戶登錄后進入到首頁界面,如圖3-1所示圖3-1系統普通用戶首頁界面系統E-R圖,具體表達了系統的一些需求分析,以及各個層次之間的聯系用戶名圖3-2全局E-R圖
12、3.2 數據庫邏輯設計1 .用戶表login ,該表用來存放用戶的登錄名和密碼表3-1用戶表字段名是否為空寬度其他用戶名Char否10primarykey密碼Char否10無2 .讀者信息表reader,該表用來存放讀者的信息.表3-2讀者信息表字段名回是否為空寬度其他借書證號Char否10primary key姓名Char否10無性別Char否10無年齡Char否10無工作單位Char否10無聯系方式Char否10無3 .圖書表book ,該表用戶存放圖書的信息及圖書的具體位置表3-3圖書表字段名回是否為空寬度其他圖書編號Char否10primary key圖書名稱Char否10無作者Cha
13、r否10無版次Char否10無出版社Char否10無圖書位置Char否10無4 .書庫表bookstore ,該表用于存放書庫的根本信息表3-4書庫表字段名是否為空寬度其他書庫編號Char否10無名稱Char否10無agChar否10無5 .圖書表和書庫表建立的一個視圖bbs,用于存放每個書庫中存放的圖書表3-5基于圖書和書庫的視圖字段名回是否為空寬度其他書庫編pChar否10無名稱Char否10無出版社Char否10無版次Char否10無作者Char否10無圖書名稱Char否10無冬-書編號Char否10無6 .3數據庫物理設計與實現從理論關系模型到實現/實施數據庫建立,物理文件的安排和建立
14、索引.數據 庫物理設計是指設計出數據庫的物理數據模型,它是數據庫在物理設備上的具體實現, 即數據庫效勞器物理空間上的表空間、表、字段、索引、視圖、儲存過程、觸發器,以 及相應的數據字典的設計.用數據庫企業治理器建立數據庫,數據庫名為MYDB然后再在該數據庫上建立用戶表,表名為login 用戶名,密碼、讀者信息表reader 借書證號,姓名,性別,年齡, 工作單位,聯系方式、圖書表book 圖書編號,圖書名稱,作者,版次,出版社,圖書 位置、書庫表表bookstore 書庫編號,名稱,位置、基于圖書和書庫的視圖書庫編 號,名稱,出版社,版次,作者,圖書名稱,圖書編號4.1系統模塊設計第4章詳細設
15、計圖4-1系統模塊圖4.2 關鍵步驟及代碼4.2.1 數據庫連接配置SqlConnection con = new SqlConnection("server=.;database=MYDB;uid=sa;pwd=5880290");4.2.2 系統登錄頁面SqlCommand cmd = new SqlCommand(string.Format("SELECT COUNT(*) FROM login WHERE 用戶格='0' AND 密一 碼='1'" ,this.user.Text.Trim(), this.pas.
16、Text.Trim(), con); try con.Open();if (int)cmd.ExecuteScalar() = 1) DialogResult m = MessageBoxShow(user.Text + 歡?迎?-回?來0?! S',"消?息?靠,°, MessageBoxButtons.YesNo, MessageBoxIcon.Information);if (m = DialogResult.Yes) this.Hide();Welcome Welcome = new Welcome();Welcome.label1.Text = this.
17、user.Text;Welcome.Show(); else MessageBoxShow("登?錄?失o????1, e?1?重漸?輸6入,?!2","消?息,?卻f "", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);pas.Clear();label5.Visible = true;catch (Exception ex)MessageBoxShow("數cy據丫庫a操"作 &?失o????1!" + ex.Message,"提? ,際o?
18、", MessageBoxButtonsQK, MessageBoxIcon. Information); finally con.Close();4.2.3 添加功能模塊注冊用戶代碼如下:SqlConnection con = new SqlConnection("server=.;database=MYDB;uid=sa;pwd=5880290");SqlCommand cmd = new SqlCommand(string.Format("insert into login(用?戶?洛?,密 1 碼?) values ('0',
19、39;1')",znuser.Text.Trim(), znpas.Text.Trim(), con);SqlCommand cm = new SqlCommand(string.Formatfselect count(*) from login where 用?戶? i 名?='0'" , znuser.Text), con);trycon.Open();if (znuser.Text = "" | znpas.Text ="") MessageBoxShow("用戶名或,密,碼不能,為空"
20、;,"消息框"", MessageBoxButtons.OKCancel, MessageBoxIcon.Error);else if (znpas.Text != zpnpas.Text)MessageBoxShow("兩次輸入的密碼不一致,請重新輸入!","錯茂,提示 ",MessageBoxButtons.OK,MessageBoxIcon.Error );label1.Visible = true;else if (int )cm.ExecuteScalar() >0)MessageBoxShow("
21、該用戶名已經被注冊,請重新輸入","錯誤提?示", MessageBoxButtons.OK, MessageBoxIcon. Error);znuser.Clear();znpas.Clear();zpnpas.Clear(); elseif (int)cmd.ExecuteNonQuery() = 1)MessageBox.Show("恭喜您注冊成功|n您的用戶名?是:"+ znuser.Text + "n密碼是:" + znpas.Text);catch (Exception ex)MessageBoxShow(&qu
22、ot;數據庫操作失敗!" + ex.Message,"提?示",MessageBoxButtons.OK, MessageBoxIcon.Information); finally con.Close();錄入圖書的操作代碼如下:SqlConnection con = new SqlConnection("server=.;database=MYDB;uid=sa;pwd=5880290");SqlCommand cmd = new SqlCommand(string.Format("insert into book values (
23、0,'1','2',3,'4',5)" bno.Text.Trim(), bname.Text.Trim(), bauthor.Text.Trim(), brank.Text.Trim(), bpub.Text.Trim(), blocation.Text.Trim(), con);try con.Open();if (int)cmd.ExecuteNonQuery() = 1) MessageBoxShow("圖書入庫成 T!");bno.Clear(); bname.Clear(); bauthor.Clear(
24、); brank.Clear(); bpub.Clear(); blocation.Clear();catch (Exception ex) MessageBoxShow("數據庫操 作失.敗!" + ex.Message,"提示",MessageBoxButtons.OK, MessageBoxIcon.Information); finally con.Close();4.2.4 編輯和刪除功能模塊 修改密碼的操作代碼如下: SqlConnection con = new SqlConnection("server=.;database=M
25、YDB;uid=sa;pwd=5880290");SqlCommand cmd = new SqlCommand(string.Format("update login set 密,碼='0' where( 密,碼='1' and用戶名='2')" ,npas.Text.Trim(),inipas.Text.Trim(), this.label5.Text .Trim(),con ); trycon.Open(); if (npas.Text = "" |inipas.Text ="&q
26、uot;)(MessageBoxShow("密 碼不能,為空!","錯?誤提示", MessageBoxButtons.OK, MessageBoxIcon.Error);else if (npas.Text !=pnpas.Text )(MessageBoxShow("兩次輸入的密,碼不致","錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Error);pnpas.Clear();label4.Visible= true;elseif (inipas.Text =npas
27、.Text)(MessageBoxShow("請輸入一個不同的密碼","錯誤提示 c?", MessageBoxButtons.OK, MessageBoxIcon.Error);npas.Clear(); pnpas.Clear();elseif (int)cmd.ExecuteNonQuery() = 1)(MessageBoxShow("恭喜您密碼修改成功|坨您,新密碼是q " + npas.Text,"消息框", MessageBoxButtons.YesNo);this.Close();Mainw mai
28、nw = new Mainw (); mainw.Show(); else (MessageBoxShow("初始密碼與當前用戶名不符","消?息?6 框,'" ,MessageBoxButtons.OKCancel ,MessageBoxIconError ); inipas.Clear(); npas.Clear(); pnpas.Clear();catch (SqlException ex)(MessageBoxShow("數據庫操 作失敗!" + ex.Message,"提示",MessageBox
29、Buttons.OK, MessageBoxIcon.Information);finally(con.Close();錄出圖書的操作代碼如下:SqlConnection con = new SqlConnection("server=.;database=MYDB;uid=sa;pwd=5880290");SqlCommand cmd = new SqlCommand(string.Format("delete from book where (圖書編號=0 or(圖書名稱 ="1'and 作者='2')" , bno
30、.Text.Trim(), bname.Text.Trim(), bauthor.Text.Trim(), con);try con.Open();if (int)cmd.ExecuteNonQuery() = 1) MessageBoxShow("圖書刪 |除成功!");bno.Clear(); bname.Clear(); bauthor.Clear(); brank.Clear(); bpub.Clear(); blocation.Clear(); else MessageBoxShow("刪除失 敗!圖書不存在","7肖息框"
31、,MessageBoxButtonsOKCancel, MessageBoxIcon.Error);catch (Exception ex)MessageBoxShow("數據庫操作失敗!" + ex.Message提示",MessageBoxButtonsOK, MessageBoxIcon.Information); finally con.Close();4.2.5 查詢模塊查詢圖書代碼如下:string connStr = "server=.; database=MYDB; uid=sa; pwd=5880290"SqlConnecti
32、on conn = new SqlConnection(connStr);SqlCommand selcom = new SqlCommand(string.Format("select * from book where 圖書名稱="0' and 作者='1' " , textBoxl.Text, textBox2.Text), conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = selcom;DataSet ds = new DataSet();da.Fil
33、l(ds, "book");dataGridViewl.DataSource = ds.Tables'book" .DefaultView;查詢書庫代碼如下:string connStr = "server=.; database=MYDB; uid=sa; pwd=5880290"SqlConnection conn = new SqlConnection(connStr);SqlCommand selcom = new SqlCommand(string.Format("select * from bookstore wh
34、ere 書庫編號='0' or 名稱='1' " , textBox3.Text, textBox4.Text), conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = selcom;DataSet ds = new DataSet();da.Fill(ds, "bookstore");dataGridView2.DataSource = ds.Tables'bookstore".DefaultView;textBox4.Clear();
35、 textBox3.Clear();治理員查詢讀者信息代碼如下:string connStr = "server=.; database=MYDB; uid=sa; pwd=5880290"SqlConnection conn = new SqlConnection(connStr);SqlCommand selcom = new SqlCommand(string.Format("select * from reader where 借書證號="0' or 姓名="1' " , textBox2.Text, text
36、Box3.Text), conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = selcom;DataSet ds = new DataSet();da.Fill(ds, "reader");dataGridViewl.DataSource = ds.Tables'reader".DefaultView;textBox2.Clear(); textBox3.Clear();治理員查詢用戶代碼如下:string connStr = "server=.; database=M
37、YDB; uid=sa; pwd=5880290"SqlConnection conn = new SqlConnection(connStr);SqlCommand selcom = new SqlCommand(string.Format("select * from login where 用戶名="0'", textBox4.Text.Trim(), conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = selcom;DataSet ds = new DataS
38、et();da.Fill(ds, "login");dataGridView2.DataSource = ds.Tables'login" .DefaultView;治理員查詢書庫信息代碼如下:string connStr = "server=.; database=MYDB; uid=sa; pwd=5880290"SqlConnection conn = new SqlConnection(connStr);SqlCommand selcom = new SqlCommand(string.Format("select *
39、 from bbs where 書庫編號='0'or 書庫 名稱='1'" , textBox5.Text.Trim(),textBox6.Text ), conn);SqlDataAdapter da = new SqlDataAdapter();da.SelectCommand = selcom;DataSet ds = new DataSet();da.Fill(ds, "bbs");dataGridView3.DataSource = ds.Tables'bbs".DefaultView;4.3 實現效果系統登錄界面如圖4-2所示.圖4-2系統登錄頁面普通用戶登錄后進入到首頁界面,如圖 4-3所示.圖4-3普通用戶首頁界面修改密碼界面圖4-4修改密碼界面注冊用戶界面圖4-5注冊用戶界面治理員登錄界面圖4-6治理員登錄界面圖書錄入界面借書界面查詢圖書圖4-7圖書錄入界面圖4-8借書界面圖4-9查詢圖書查詢書庫書庫編罵:1書庫名稱J.書庫查詢圖4-10查詢書庫查詢讀者圖4-11查詢讀者治理員修改用戶密碼圖4-12治理員修改用戶密碼經過一段時間的圖書館信息治理系統的設計,我在這次數據庫設計中鍛煉
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論