版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)題目:醫(yī)藥管理信息系統(tǒng)班級:10級計(jì)算機(jī)科學(xué)與技術(shù)(1)班 姓名:大 大 鍋 飯 學(xué)號: 任課教師: 開始時(shí)間:2012年05月02日結(jié)束時(shí)間:2012年06月10日17 / 18文檔可自由編輯打印目錄第一章 概述21.1 項(xiàng)目背景21.2 編寫目的21.3 軟件定義21.4 開發(fā)環(huán)境及相關(guān)要求2第二章 需求分析22.1 信息要求22.2 處理要求22.3 安全性與完整性要求4第三章 概念結(jié)構(gòu)設(shè)計(jì)4第四章 邏輯結(jié)構(gòu)設(shè)計(jì)5第五章 主要模塊的設(shè)計(jì)以及代碼65.1 設(shè)計(jì)思路65.2 主要代碼65.2.1查詢模塊主要代碼65.2.2 刪除模塊主要代碼75.2.3 修改
2、模塊主要代碼95.2.4 瀏覽模塊主要代碼95.2.5 打印主要代碼105.2.6 添加模塊主要代碼145.3 系統(tǒng)制作簡介16第六章 總結(jié)166.1開發(fā)過程中遇到的問題以及解決方法166.2開發(fā)的體會(huì)17第七章 參考文獻(xiàn)17第一章 概論1.1項(xiàng)目背景設(shè)計(jì)本系統(tǒng),模擬醫(yī)藥超市的部分管理功能。藥品由專門的采購人員從醫(yī)藥經(jīng)銷商處購進(jìn)醫(yī)藥超市,并將藥品信息記錄入庫,顧客從超市購買藥品需填寫相關(guān)個(gè)人信息,每次售藥需登記經(jīng)辦人(醫(yī)藥超市員工,即銷售人員)的信息,以及所售藥品的信息。1.2編寫目的為了增強(qiáng)自身的編程能力,提高對數(shù)據(jù)庫學(xué)習(xí)的興趣,理解到要作為程序員應(yīng)該具備的素質(zhì)。1.3軟件定義本軟件僅供學(xué)習(xí)
3、交流,不做他用,而且由于作者能力有限本管理系統(tǒng)難免有bug,在此特發(fā)表聲明。1.4開發(fā)環(huán)境Winxp以上操作系統(tǒng),并且裝有SQL server2000或以上的任意版本(裝好SP3或SP4補(bǔ)?。?,還要裝有JDK1.6或JDK1.7,此外要有能夠運(yùn)行java程序的軟件(譬如Eclipse、Myeclipse等)。第二章 需求分析2.1信息要求通過本系統(tǒng)用戶可以從數(shù)據(jù)庫中獲得相關(guān)的藥品信息和顧客的個(gè)人信息以及購買的藥品信息,還有藥店相關(guān)人員的情況。數(shù)據(jù)庫中需要存儲(chǔ)顧客信息表,經(jīng)辦人信息表、藥品信息表、賬戶信息表。2.2處理要求此系統(tǒng)功能分為八大功能模塊,主要有:“信息查詢”功能模塊查詢顧客信息查詢經(jīng)
4、辦人信息 查詢藥品信息“信息錄入”功能模塊錄入顧客信息錄入經(jīng)辦人信息錄入藥品信息“信息刪除”功能模塊刪除顧客信息刪除經(jīng)辦人信息刪除藥品信息“信息修改”功能模塊修改顧客信息修改經(jīng)辦人信息修改藥品信息 “信息瀏覽”功能模塊瀏覽顧客信息瀏覽經(jīng)辦人信息瀏覽藥品信息“數(shù)據(jù)報(bào)表”功能模塊顧客信息報(bào)表經(jīng)辦人信息報(bào)表藥品信息報(bào)表用戶管理與用戶登陸功能模塊系統(tǒng)可根據(jù)需要添加、刪除用戶,并可對已有的用戶信息進(jìn)行修改操作;在添加新用戶時(shí),可定義其操作權(quán)限(查詢、更新、瀏覽、報(bào)表等權(quán)限);用戶密碼可進(jìn)行隨時(shí)修改;各種不同身份的用戶登陸系統(tǒng)后,可享有不同的系統(tǒng)操作權(quán)限。系統(tǒng)幫助及使用說明功能模塊為用戶提供必要的在線幫助
5、功能和簡要的操作使用說明。下圖為本管理系統(tǒng)的大致功能模塊圖圖2.2-1功能模塊圖2.3安全性與完整性要求本系統(tǒng)由于是供學(xué)習(xí)交流用的,所以在數(shù)據(jù)庫的安全性方面做的不是特別嚴(yán)密,對于藥品的信息可以公開查詢,而系統(tǒng)中的賬戶的信息則不對外公開。一般的賬戶時(shí)沒辦法查看其他賬戶的信息(除管理員外)。這些都是根據(jù)不同賬戶設(shè)定的,安全性可以跟據(jù)情況作恰當(dāng)?shù)母膭?dòng)。至于完整性也是一樣,可以根據(jù)實(shí)際情況修改數(shù)據(jù)庫的完整性約束條件,以此來滿足用戶的要求。第三章 概念結(jié)構(gòu)設(shè)計(jì)下圖為根據(jù)本系統(tǒng)而做的基本E-R圖圖3.1基本E-R圖第四章 邏輯結(jié)構(gòu)設(shè)計(jì)把E-R圖轉(zhuǎn)為關(guān)系表如下:顧客(顧客號,顧客名,顧客性別,顧客年齡,顧客
6、住址,顧客電話,顧客癥狀,藥品號,經(jīng)辦人號,日期,顧客備注)藥品(藥品號,藥品名稱,藥品服用方法,藥品功效)經(jīng)辦人(經(jīng)辦人號,經(jīng)辦人姓名,經(jīng)辦人電話,經(jīng)辦人備注)圖4.1 關(guān)系圖第五章 主要模塊的設(shè)計(jì)以及代碼5.1總體模塊設(shè)計(jì)思路實(shí)現(xiàn)不同功能用戶登錄選擇用戶登陸界面5.2關(guān)鍵代碼:5.2.1 查詢模塊部分主要代碼:(1)c=new Choice();String selectname="cno","cname","csex","cage","caddress","cphone"
7、;,"csymptom","mno","ano","cdate","cremark"for(int i=0;i<selectname.length;i+)c.add(selectnamei);jl=new JLabel("請選擇查詢類型:");b1=new JButton("查詢");b1.addActionListener(this);/=監(jiān)聽查詢按鈕 (2)public void actionPerformed(ActionEvent e) if
8、(e.getSource()=b1) String select=new String(c.getSelectedItem().trim();/下拉選擇要查詢的條件 String input=tf.getText().trim();/從文本框中獲取輸入的內(nèi)容 String sql="use market select * from client where "+""+select+""+"="+"'"+input+"'"/寫出sql語句 System.out.
9、println("ssfsfsfs="+sql); cm=new ClientModel(sql);/ 執(zhí)行sql查詢,并且更新table,顯示結(jié)果 table.setModel(cm); 5.2.2刪除模塊的主要部分代碼:if(e.getSource()=b3)/-=- int rownum=this.table.getSelectedRow(); if(rownum=-1) JOptionPane.showMessageDialog(this, "請選一行"); return ; / System.out.println("西歐 "
10、;+rownum); num=(String)cm.getValueAt(rownum, 0);/-獲取當(dāng)前行的cno-/ System.out.println(num); try Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); con = DriverManager.getConnection("jdbc:microsoft:sqlserver:/localhost:1433; databaseName=market","sa","1234&qu
11、ot;); String sql="use market delete from client where cno="+""+num+"" stmt=con.createStatement(); stmt.executeUpdate(sql); catch (ClassNotFoundException e1) e1.printStackTrace();JOptionPane.showMessageDialog(null, "驅(qū)動(dòng)未找到!");catch (SQLException e1) e1.printStac
12、kTrace();JOptionPane.showMessageDialog(null, "應(yīng)用軟件錯(cuò)誤"); finallytry if (rs != null) rs.close(); / 關(guān)閉命令對象連接rs = null;if (stmt != null) stmt.close();stmt = null;if (con != null) con.close(); / 關(guān)閉數(shù)據(jù)庫連接con = null; catch (SQLException e1) e1.printStackTrace(); cm=new ClientModel(); table.setMode
13、l(cm); 5.2.3修改模塊的主要代碼:try Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");con = DriverManager.getConnection("jdbc:microsoft:sqlserver:/localhost:1433; databaseName=market","sa","1234");stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,Re
14、sultSet.CONCUR_UPDATABLE);rs = stmt.executeQuery(sql);while (rs.next() Vector<String> temp = new Vector<String>();temp.add(rs.getString(1);temp.add(rs.getString(2);temp.add(rs.getString(3);temp.add(String.valueOf(rs.getInt(4);temp.add(rs.getString(5);temp.add(rs.getString(6);temp.add(rs.
15、getString(7);temp.add(rs.getString(8);temp.add(rs.getString(9);temp.add(String.valueOf(rs.getDate(10);temp.add(rs.getString(11);a.add(temp);5.2.4瀏覽模塊主要代碼:try Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); con = DriverManager.getConnection("jdbc:microsoft:sqlserver:/loc
16、alhost:1433; databaseName=market","sa","1234"); String sql="use market delete from client where cno="+""+num+"" stmt=con.createStatement(); stmt.executeUpdate(sql); catch (ClassNotFoundException e1) e1.printStackTrace();JOptionPane.showMessageDi
17、alog(null, "驅(qū)動(dòng)未找到!");catch (SQLException e1) e1.printStackTrace();JOptionPane.showMessageDialog(null, "SQL語句執(zhí)行錯(cuò)誤");5.2.5打印報(bào)表:public class extends JFrame te J chooser = null;private filter = null;int returnVal;String NameA = "編號 ","姓名 ","性別 ","電話
18、 ","備注 "String NameM = "編號 ","名稱 ","服用方法 ","功效 "String NameC = "編號 ","姓名 ","性別 ","年齡 ","住址 ","電話 ","癥狀 ","已購藥品 ","經(jīng)辦人 " , "錄入時(shí)期" , "備注 "
19、;/*ClientOne client;AttnOne agency;MedicineOne medi;*/ClientModel cclient = new ClientModel();AgencyModel aagency = new AgencyModel();MedicineModel mmedi = new MedicineModel();public (int select) /*throws MalformedURLException*/System.out.println("123");try/UIManager.setLookAndFeel( UIMana
20、ger.getSystemLookAndFeelClassName();/Font font = new Font("Courier",Font.BOLD,20);catch(Exception e)e.printStackTrace(); filter = new ( "xls文件", "xls");chooser = new J();chooser.set(filter);chooser.setSelected File("123.xls");int returnVal = chooser.showSaveDi
21、alog(this);if(returnVal = J)String path = chooser.getCurrentDirectory().getPath()+chooser.getSelectedFile().getName(); = new );tryint length = 0 ;PrintWriter pw = new PrintWriter(dataFile);if(select = 1)for(int i = 0 ; i < 11 ; i+)pw.write(NameCi);pw.write("t");length = cclient.getRowCo
22、unt();pw.write("n");for(int i = 0 ; i < length ; i+)for(int j = 0 ; j < 11 ; j+)pw.write(cclient.getValueAt(i, j).toString();pw.write("t");pw.write("n");if(select = 2)for(int i = 0 ; i < 5 ; i+)pw.write(NameAi);pw.write("t");length = aagency.getRowCou
23、nt();pw.write("n");for(int i = 0 ; i < length ; i+)for(int j = 0 ; j < 5 ; j+)pw.write(aagency.getValueAt(i, j).toString();pw.write("t");pw.write("n");if(select = 3)for(int i = 0 ; i < 4 ; i+)pw.write(NameMi);pw.write("t");length = mmedi.getRowCount()
24、;pw.write("n");for(int i = 0 ; i < length ; i+)for(int j = 0 ; j < 4 ; j+)pw.write(mmedi.getValueAt(i, j).toString();pw.write("t");pw.write("n");pw.close();catch( e)e.printStackTrace();5.2.6 添加模塊主要代碼:public void actionPerformed(ActionEvent e)if(e.getSource()=b1)tr
25、yClass.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");aConnection = DriverManager.getConnection("jdbc:microsoft:sqlserver:/localhost:1433; databaseName=market","sa","1234");/pas = aConnection.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.C
26、ONCUR_UPDATABLE);String c1= t1.getText();String c2=t2.getText();String c3=ch.getSelectedItem().trim();int c4=Integer.parseInt(t4.getText().trim();String c5=t5.getText();String c6=t6.getText();String c7=t7.getText();c8=t8.getText();c9=t9.getText();String c10=t0.getText();String c11=t11.getText();Stri
27、ng sql="use market insert into client values("+"'"+c1+"'"+","+"'"+c2+"'"+","+"'"+c3+"'"+","+"'"+c4+"'"+","+"'"+c5+"'
28、;"+","+"'"+c6+"'"+","+"'"+c7+"'"+","+"'"+c8+"'"+","+"'"+c9+"'"+","+"'"+c10+"'"+","+"'"+c11+"'"+")"pas=aConnection.prepareStatement(sql);pas.executeUpdate();frame.dispose();/=關(guān)閉添加窗口new Clienttable2();catch (SQLExcep
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025振動(dòng)沉管灌注樁整體機(jī)械出租合同
- 2025不動(dòng)產(chǎn)權(quán)籍調(diào)查技術(shù)咨詢服務(wù)合同
- 課題申報(bào)參考:凌家灘史前玉器藝術(shù)價(jià)值挖掘與傳承創(chuàng)新路徑研究
- 學(xué)科交叉融合與創(chuàng)新能力提升
- 會(huì)展合同管理與風(fēng)險(xiǎn)防范考核試卷
- 二零二五年度森林碳匯樹木種植項(xiàng)目合同4篇
- 2025年滬教版選擇性必修1歷史下冊階段測試試卷
- 2025年新世紀(jì)版九年級地理上冊階段測試試卷
- 2025年冀教版九年級地理上冊月考試卷
- 2025年華師大版選擇性必修1化學(xué)下冊月考試卷
- 2024-2025學(xué)年北京石景山區(qū)九年級初三(上)期末語文試卷(含答案)
- 第一章 整式的乘除 單元測試(含答案) 2024-2025學(xué)年北師大版數(shù)學(xué)七年級下冊
- 春節(jié)聯(lián)歡晚會(huì)節(jié)目單課件模板
- 中國高血壓防治指南(2024年修訂版)
- 糖尿病眼病患者血糖管理
- 抖音音樂推廣代運(yùn)營合同樣本
- 教育促進(jìn)會(huì)會(huì)長總結(jié)發(fā)言稿
- 北師大版(2024新版)七年級上冊數(shù)學(xué)第四章《基本平面圖形》測試卷(含答案解析)
- 心理調(diào)適教案調(diào)整心態(tài)積極應(yīng)對挑戰(zhàn)
- 噴漆外包服務(wù)合同范本
- JT-T-390-1999突起路標(biāo)行業(yè)標(biāo)準(zhǔn)
評論
0/150
提交評論