




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、數(shù)據(jù)庫原理與應用課程設計題 目: 影碟出租數(shù)據(jù)庫系統(tǒng)設計與實現(xiàn) 系 別: 數(shù)學與信息工程學院 專業(yè)(含班級): 09計算機科學與技術(嵌入式) 學 號: 姓 名: 指導教師: 職稱 副教授 填表日期: 2011 年 12 月 26 日前 言一、選題的依據(jù)及意義1. 依據(jù)熟悉c#、sql程序設計的基本語法知識及常用技巧。2. 意義本課程的課程設計實際是學生學習完數(shù)據(jù)庫系統(tǒng)概論課程后,進行的一次全面的綜合訓練,其目的在于加深對編程技術基本知識的理解,掌握運用開發(fā)應用程序的基本方法及基本技巧。二、本課程設計內容1. 出租、歸還碟片信息的統(tǒng)計:會員賬號,影碟編號,出租時間,歸還時間,租金等2. 影片信
2、息的查詢的統(tǒng)計:影碟編號,名稱,類型,國家,主演,單價,購入時間,庫存量。3.營業(yè)員和會員資料的查詢的統(tǒng)計:營業(yè)員賬號,會員賬號, 密碼,姓名,辦理時間,剩余可租碟數(shù),工作時間。4.營業(yè)員、會員及碟片的添加或刪除。三、研究目標1. 碟片出租系統(tǒng)是一個面向碟片出租者的管理信息系統(tǒng)。有會員(租借者),營業(yè)員,店長三方組成。該系統(tǒng)的工作目標就是要碟片的出租能有計劃地進行,以利于出租者管理。2. 本系統(tǒng)開發(fā)將綜合采用結構化系統(tǒng)開發(fā)方法和面向對象開發(fā)方法,充分發(fā)揮兩種開發(fā)方法的優(yōu)勢。實 現(xiàn) 方 案一、開發(fā)平臺選擇1. sql server 20002. c#二、需求分析在對世面上的影碟出租公司進行了初步
3、的了解后,發(fā)現(xiàn)其業(yè)務主要是集中在影碟的管理和錄像的出租歸還上。對影碟的管理工作量較大,采用手工的方式還容易出錯,并且不能滿足顧客對影碟的詳細信息的查詢功能。在現(xiàn)有的影碟出租中對會員的管理也很重要,傳統(tǒng)的登記方式不僅費時而且不能對其出租日志進行系統(tǒng)的管理,造成了不必要的經(jīng)濟損失。綜上說述,在影碟出租數(shù)據(jù)庫設計中應考慮和克服了上訴的諸多問題,增強了實用性。2.1數(shù)據(jù)需求影片信息數(shù)據(jù):錄像id、片名、導演、主演、類型、介紹、上映時間。錄像信息數(shù)據(jù):錄像id、格式、語言、進貨時間、狀態(tài)、庫存數(shù)量。租借記錄數(shù)據(jù):記錄id、租借時間。租借項記錄數(shù)據(jù):記錄項id、租借數(shù)量、歸還時間、租金。租金信息數(shù)據(jù):租借
4、類型、租借天數(shù)、每日金額。會員信息數(shù)據(jù):會員id、會員姓名、會員性別、身份證id、電話、地址。2.2功能需求會員信息管理部分:可以查詢會員資料、可以對會員進行增刪。影片信息管理部分:可以查詢影片本身的信息、可以對影片信息實行增刪。租借信息管理部分:可以查詢影片的租借狀態(tài)。租金信息管理部分:可以查詢各類影片的租金情況、會員應付的租金情況。數(shù)據(jù)流圖:2.業(yè)務流程圖: 圖1:影碟出租管理系統(tǒng)業(yè)務流程圖三、概要結構設計 圖2:影碟出租管理系統(tǒng)e-r圖四、邏輯結構設計:1.選課系統(tǒng)關系模式:(1)店長(店長賬號,密碼,姓名);(2)營業(yè)員(營業(yè)員賬號,密碼,姓名,性別,工作時間,店長賬號);(3)會員(
5、會員帳號,密碼,姓名,辦理時間,剩余可租碟數(shù),營業(yè)員賬號);(4)影碟查詢(影碟編號,名稱,類型,國家,主演,單價,購入時間,庫存量)(5)影碟出租、歸還(影碟編號,出租時間,營業(yè)員賬號,會員賬號)2. 數(shù)據(jù)庫關系圖:圖3:影碟出租管理系統(tǒng)關系圖五、功能模塊設計影碟出租管理系統(tǒng)營業(yè)員租借查詢登陸添加店長修改密碼退出出租影碟返還影碟影碟查詢 會員查詢退碟查詢新營業(yè)員新入會員影碟類別會員級別營業(yè)員圖4:影碟出租管理系統(tǒng)功能模塊圖六、主界面設計1.登錄界面: 圖4:影碟出租管理系統(tǒng)登陸頁面2. 主界面:圖4:影碟出租管理系統(tǒng)主頁面圖5:會員管理主頁面八、主要功能的源代碼1.連接數(shù)據(jù)庫string c
6、onnstr = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data source=pc-20100331fomn; string selectcmd = select * from 影碟信息 where 影碟編號= + 影碟編號.text + ; /建立選擇查詢 string insertcmd = insert into 影碟信息 values( + 影碟編號.text + , + 名稱.text + , + 類型.text + , + 國家.text + , + 主演.tex
7、t + ,+單價.text+,+購入時間.text+,+庫存量.text+);/建立插入查詢 sqlconnection conn = new sqlconnection(connstr); /建立數(shù)據(jù)庫連接 conn.open(); sqlcommand cmd1 = new sqlcommand(selectcmd, conn); /建立數(shù)據(jù)庫命令 sqldatareader reader = cmd1.executereader();2.查詢3.增加private void 添加_click(object sender, eventargs e) 賬號.focus(); if (賬號.t
8、ext != & 密碼.text != & 姓名.text != & 剩余可租碟數(shù).text != & 營業(yè)員賬號.text != ) /*項上不能為空 string connstr = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data source=pc-20100331fomn; string selectcmd = select * from 會員 where 會員賬號= + 賬號.text + ; /建立選擇查詢 string insertcmd = insert int
9、o 會員 values( + 賬號.text + , + 密碼.text + , + 姓名.text + , + 辦理時間.text + , + 剩余可租碟數(shù).text + , + 營業(yè)員賬號.text + );/建立插入查詢 sqlconnection conn = new sqlconnection(connstr); /建立數(shù)據(jù)庫連接 conn.open(); sqlcommand cmd1 = new sqlcommand(selectcmd, conn); /建立數(shù)據(jù)庫命令 sqldatareader reader = cmd1.executereader(); if (!reade
10、r.read() /讀取數(shù)據(jù) reader.close(); sqlcommand cmd = new sqlcommand(insertcmd, conn); /建立新的數(shù)據(jù)庫命令 try cmd.executenonquery(); /執(zhí)行操作命令 messagebox.show(添加成功!); 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; catch (exception ex) messagebox.show(添加出錯!錯誤原因為:n + ex.message + n);
11、 else /賬號已存在 reader.close(); messagebox.show(對不起,此賬號已經(jīng)被使用,請更改賬號!, 會員賬號檢驗!, messageboxbuttons.ok, messageboxicon.warning); /用戶名已 賬號.text = ; conn.close(); else messagebox.show(帶*項不能為空!, 會員賬號核查, messageboxbuttons.ok, messageboxicon.warning); string updatecmd, updatecmd1, updatecmd2, updatecmd3, update
12、cmd4; private void 修改_click(object sender, eventargs e) 賬號.focus(); if (賬號.text != ) /*項上不能為空 string connstr = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data source=pc-20100331fomn; string selectcmd = select * from 會員 where 會員賬號= + 賬號.text + ; /建立選擇查詢 if (密碼.text
13、!= ) updatecmd = update 會員 set 密碼= + 密碼.text + where 會員賬號= + 賬號.text + ; if (姓名.text != ) updatecmd1 = update 會員 set 姓名= + 姓名.text + where 會員賬號= + 賬號.text + ; if (辦理時間.text != ) updatecmd2 = update 會員 set 辦理時間= + 辦理時間.text + where 會員賬號= + 賬號.text + ; if (剩余可租碟數(shù).text != ) updatecmd3 = update 會員 set 剩
14、余可租碟數(shù)= + 剩余可租碟數(shù).text + where 會員賬號= + 賬號.text + ; if (營業(yè)員賬號.text != ) updatecmd4 = update 會員 set 營業(yè)員賬號= + 營業(yè)員賬號.text + where 會員賬號= + 賬號.text + ; /建立更新查詢 sqlconnection conn = new sqlconnection(connstr); /建立數(shù)據(jù)庫連接 conn.open(); sqlcommand cmd = new sqlcommand(selectcmd, conn); /建立數(shù)據(jù)庫命令 sqldatareader read
15、er = cmd.executereader(); if (reader.read() /讀取數(shù)據(jù) reader.close(); try if (密碼.text != ) sqlcommand cmd1 = new sqlcommand(updatecmd, conn); /建立新的數(shù)據(jù)庫命令 cmd1.executenonquery(); if (姓名.text != ) sqlcommand cmd2 = new sqlcommand(updatecmd1, conn); /建立新的數(shù)據(jù)庫命令 cmd2.executenonquery(); if (辦理時間.text != ) sqlc
16、ommand cmd3 = new sqlcommand(updatecmd2, conn); /建立新的數(shù)據(jù)庫命令 cmd3.executenonquery(); if (剩余可租碟數(shù).text != ) sqlcommand cmd4 = new sqlcommand(updatecmd3, conn); /建立新的數(shù)據(jù)庫命令 cmd4.executenonquery(); if (營業(yè)員賬號.text != ) sqlcommand cmd5 = new sqlcommand(updatecmd4, conn); /建立新的數(shù)據(jù)庫命令 cmd5.executenonquery(); me
17、ssagebox.show(修改成功!); 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; catch (exception ex) messagebox.show(修改出錯!錯誤原因為:n + ex.message + n); 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else /影碟編號已存在 reader.close(); messagebox.show(對
18、不起,無此會員,請更改會員編號!, 會員賬號檢驗!, messageboxbuttons.ok, messageboxicon.warning); /用戶名已 賬號.text = ; conn.close(); private void 刪除_click(object sender, eventargs e) string connstr = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data source=pc-20100331fomn; sqlconnection conn =
19、 new sqlconnection(connstr); conn.open(); string select = select * from 出租關系 where 會員賬號= + 賬號.text + ; sqlcommand cmd1 = new sqlcommand(select, conn); sqldatareader reader1 = cmd1.executereader(); if (!reader1.read() string selectcmd = select * from 會員 where 會員賬號= + 賬號.text + ; sqlcommand cmd = new
20、sqlcommand(selectcmd, conn); sqldatareader reader = cmd.executereader(); if (!reader.read() messagebox.show(不存在此會員!, , messageboxbuttons.ok, messageboxicon.warning); else reader.close(); dialogresult result = messagebox.show(確實要刪除此會員嗎?, , messageboxbuttons.yesno, messageboxicon.question); if (result
21、 = dialogresult.yes) string delstr = delete from 會員 where 會員賬號= + 賬號.text + ; cmd = new sqlcommand(delstr, conn); cmd.executenonquery(); messagebox.show(已成功刪除了此會員!); 賬號.text = ; else messagebox.show(此會員有影碟未歸還,不能刪除!, , messageboxbuttons.ok, messageboxicon.warning); private void 查詢_click(object sender
22、, eventargs e) string source = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data source=pc-20100331fomn; string select = select * from 會員 where 會員賬號= + 賬號.text + ; string select1 = select * from 會員 where 姓名= + 姓名.text + ; string select2 = select * from 會員 where 營業(yè)員賬號
23、= + 營業(yè)員賬號.text + ; sqlconnection conn = new sqlconnection(source); conn.open(); sqldataadapter adapter = new sqldataadapter(select, conn); sqldataadapter adapter1 = new sqldataadapter(select1, conn); sqldataadapter adapter2 = new sqldataadapter(select2, conn); dataset ds = new dataset(); if (賬號.text
24、 != ) if (會員信息.columns.count 0) 會員信息.columns.clear(); adapter.fill(ds, 會員); datatablereader dtr = ds.createdatareader(); if (dtr.read() 會員信息.datasource = ds.tables會員; 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else dtr.close(); messagebox.show(不存在此會員,請重新輸入會員賬號!)
25、; 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else if (姓名.text != ) if (會員信息.columns.count 0) 會員信息.columns.clear(); adapter1.fill(ds, 會員); datatablereader dtr = ds.createdatareader(); if (dtr.read() 會員信息.datasource = ds.tables會員; 賬號.text = ; 密碼.text = ; 姓名.text =
26、 ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else messagebox.show(不存在此會員,請重新輸入會員賬號!); 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else if (營業(yè)員賬號.text!=) if (會員信息.columns.count 0) 會員信息.columns.clear(); adapter2.fill(ds, 會員); datatablereader dtr = ds.createdatar
27、eader(); if (dtr.read() 會員信息.datasource = ds.tables會員; 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else messagebox.show(不存在此會員,請重新輸入會員賬號!); 賬號.text = ; 密碼.text = ; 姓名.text = ; 辦理時間.text = ; 剩余可租碟數(shù).text = ; 營業(yè)員賬號.text = ; else messagebox.show(請輸入會員賬號!); 賬號.text =
28、; conn.close(); private void 瀏覽_click(object sender, eventargs e) if (會員信息.columns.count 0) 會員信息.columns.clear(); string source = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data source=pc-20100331fomn; string select = select 會員賬號,姓名,辦理時間,剩余可租碟數(shù),營業(yè)員賬號 from 會員; sqlco
29、nnection conn = new sqlconnection(source); conn.open(); sqldataadapter adapter = new sqldataadapter(select, conn); dataset ds = new dataset(); adapter.fill(ds, 會員); datatablereader dtr = ds.createdatareader(); if (dtr.read() 會員信息.datasource = ds.tables會員; else messagebox.show(不存在此會員!); conn.close();
30、 private void 會員移交_click(object sender, eventargs e) this.hide(); 會員移交 from = new 會員移交(); from.show(); 4.刪除5.修改private void 修改_click(object sender, eventargs e) 賬號.focus(); if (賬號.text != ) /*項上不能為空 string connstr = integrated security=sspi;persist security info=false;initial catalog=影碟出租管理系統(tǒng);data s
31、ource=pc-20100331fomn; string selectcmd = select * from 會員 where 會員賬號= + 賬號.text + ; /建立選擇查詢 if (密碼.text != ) updatecmd = update 會員 set 密碼= + 密碼.text + where 會員賬號= + 賬號.text + ; if (姓名.text != ) updatecmd1 = update 會員 set 姓名= + 姓名.text + where 會員賬號= + 賬號.text + ; if (辦理時間.text != ) updatecmd2 = upda
32、te 會員 set 辦理時間= + 辦理時間.text + where 會員賬號= + 賬號.text + ; if (剩余可租碟數(shù).text != ) updatecmd3 = update 會員 set 剩余可租碟數(shù)= + 剩余可租碟數(shù).text + where 會員賬號= + 賬號.text + ; if (營業(yè)員賬號.text != ) updatecmd4 = update 會員 set 營業(yè)員賬號= + 營業(yè)員賬號.text + where 會員賬號= + 賬號.text + ; /建立更新查詢 sqlconnection conn = new sqlconnection(conn
33、str); /建立數(shù)據(jù)庫連接 conn.open(); sqlcommand cmd = new sqlcommand(selectcmd, conn); /建立數(shù)據(jù)庫命令 sqldatareader reader = cmd.executereader(); if (reader.read() /讀取數(shù)據(jù) reader.close(); try if (密碼.text != ) sqlcommand cmd1 = new sqlcommand(updatecmd, conn); /建立新的數(shù)據(jù)庫命令 cmd1.executenonquery(); if (姓名.text != ) sqlcommand cmd2 = new
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 留學生實習生勞動合同
- 天水66號文化創(chuàng)意園的商業(yè)模式迭代案例研究
- 利用黃河泥沙制備防汛石材方法研究
- 基于視覺的草莓自動采收系統(tǒng)研究
- 基于歷史解釋素養(yǎng)的高中歷史單元作業(yè)設計研究
- 白蛋白-球蛋白比值與維持性血液透析患者預后的相關性
- 鋯基金屬有機框架材料的固相法合成及其催化性能研究
- 基于學習任務群的高中語文科普文教學策略與實施-以統(tǒng)編版必修下冊為例
- pH響應的集束式可視化基因載體構建與評價
- 課題申報書:新時代湖北高等教育對外開放戰(zhàn)略研究
- 小學三年級數(shù)學兩位數(shù)乘兩位數(shù)筆算能力測驗練習題
- 心理發(fā)展與教育智慧樹知到期末考試答案章節(jié)答案2024年浙江師范大學
- MOOC 國情分析與商業(yè)設計-暨南大學 中國大學慕課答案
- MOOC 大學體育-華中科技大學 中國大學慕課答案
- 《光伏發(fā)電工程工程量清單計價規(guī)范》
- 國家衛(wèi)生部《綜合醫(yī)院分級管理標準》
- DB64++1996-2024+燃煤電廠大氣污染物排放標準
- 初中八年級數(shù)學課件-最短路徑-將軍飲馬問題
- 信息論與編碼期末考試題(全套)
- 醫(yī)院醫(yī)學倫理審查委員會章程
- 房地產(chǎn)銷售價格優(yōu)惠申請表-
評論
0/150
提交評論