版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
數(shù)據(jù)庫課程設(shè)計-工資管理系統(tǒng)《數(shù)據(jù)庫原理》課程設(shè)計報告專業(yè):
信息安全班級:
0441002學(xué)號:姓名:題目名稱:完成日期:
2010212142康慧博 夏真珍工資管理系統(tǒng)2012年6月
梁麗元2日重慶郵電大學(xué)計算機科學(xué)與技術(shù)學(xué)院實驗中心系統(tǒng)設(shè)計1.1目標(biāo)設(shè)計在工資管理中,需要從公司管理方式以及實際情況中提取相關(guān)信息,以反映工資管理情況。傳統(tǒng)的手工操作方式,易發(fā)生數(shù)據(jù)丟失,統(tǒng)計錯誤,勞動強度高,且速度慢。使用計算機可以高速,快捷地完成以上工作。避免重復(fù)勞動,規(guī)范工資管理行為,從而提高了管理效率和水平。讓人們的效率大大提高.不難想象,正是資訊的迅速發(fā)展使得人們從過去繁復(fù)的手工勞作中得以解脫,從而使這種服務(wù)在現(xiàn)在才可能迅速普及。同時,編寫一套完整的工資管理系統(tǒng)的任務(wù)就顯得尤為重要。開發(fā)設(shè)計思想本系統(tǒng)開發(fā)設(shè)計思想:對公司軟硬件調(diào)查,從實際環(huán)境出發(fā),以便充分利用公司現(xiàn)在資源,提高系統(tǒng)開發(fā)水平和應(yīng)用效果。了解公司的需要及相關(guān)方面的規(guī)定,根據(jù)需要做出符合要求的軟件,并達到操作過程中的直觀、方便、實用、安全等要求。-1-將系統(tǒng)按模塊分工到人,提高效率,且模塊化設(shè)計便于系統(tǒng)功能的各種組合和修改及日后的維護系統(tǒng)應(yīng)具備數(shù)據(jù)庫維護功能,及時根據(jù)用戶需求進行數(shù)據(jù)的添加、刪除、修改、等操作。1.3開發(fā)和運行環(huán)境選擇開發(fā)工具:SQL2000, java語言。運行環(huán)境:WindowsXP,Windows2000或VISTA操作系統(tǒng)。1.4系統(tǒng)功能分析本系統(tǒng)主要用于員工基本信息的管理,對員工以及其他信息的添加、修改、刪除、查詢等基本操作。對于數(shù)據(jù)庫的保護有數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)的功能。針對這些要求,設(shè)計本月工資信息管理系統(tǒng)。該系統(tǒng)主要包括職工信息、職工考勤信息、職工津貼信息。1)職工信息管理系統(tǒng)功能為:財務(wù)部門相關(guān)人員錄入、修改、刪除、查詢員工個人信息;員工本人能通過用戶名和密碼查詢自己的信息以及修改自己的密碼;2)職工工資管理系統(tǒng)-2-功能為:根據(jù)工資生成公式,按照員工的考勤情況及各種表現(xiàn)按月生成相應(yīng)的工資;財務(wù)部門相關(guān)人員能錄入、修改、刪除、查詢每個月每個員工的工資信息以及工資匯總;員工本人能查詢自己的工資信息以及工資匯總;3)職工津貼管理系統(tǒng)功能為:財務(wù)部門相關(guān)人員錄入、修改、刪除、查詢職工津貼信息;職工本人能查詢自己的津貼;4)職工考勤管理系統(tǒng)功能為:后勤管理人員錄入、修改、刪除、查詢職工考勤信息;職工本人能查詢自己的考勤情況。采用模塊化設(shè)計思想,可以大大提高設(shè)計的效率,并且可以最大限度地減少不必要的錯誤。其系統(tǒng)結(jié)構(gòu)框圖如圖所示:工資管理系統(tǒng)-3-系工津考員統(tǒng)資貼勤工模生管管管塊成理理理模模模模塊塊塊塊圖1.1系統(tǒng)功能模塊圖數(shù)據(jù)庫設(shè)計2.1數(shù)據(jù)庫需求分析根據(jù)工資管理要求及用戶需求調(diào)查分析,得到以下數(shù)據(jù)流圖職工信操作數(shù)據(jù)工資信息系統(tǒng)操作考勤信息數(shù)據(jù)庫操作津貼管進入基本界圖2.1第一-4-層數(shù)據(jù)流圖添加輸入職工用戶修改職修改職工表刪除職刪除職工號查詢圖2.2職工信息的載入添加輸入工資用戶修改工修改工資表刪除工資信息刪除查 詢圖2.3工資的信息載入-5-添加輸入考勤用戶修改考修改刪除考勤信息刪除查詢圖2.4考勤的信息載入添加輸入津貼
考勤表用戶修改津刪除津貼信息
修改刪除查 詢
津貼表圖2.5津貼的信息載入職工管理員進入系統(tǒng)-6-進入員工(工資,考勤,津貼)表職津工考勤進 行 錄圖2.6信息查詢及管理的流程圖2.2 數(shù)據(jù)庫概念設(shè)計有了數(shù)據(jù)流圖,用E-R圖來說明工資信息管理系統(tǒng)的數(shù)據(jù)庫概念模式,如圖2-2所示基本職 個 人工資-7-醫(yī)療1領(lǐng)n電話m缺勤影n出勤1 nm密 影-8-n1n領(lǐng)圖 2.7實體之間關(guān)系E-R圖2.3 數(shù)據(jù)庫邏輯設(shè)計將以上E-R轉(zhuǎn)換成如下關(guān)系模式員工(職工號,姓名,工齡,部門崗位,電話號碼,密碼)工資(職工號,個人所得稅,基本工資,醫(yī)療保險,缺勤扣除)考勤(職工號,缺勤天數(shù),缺勤類別,時-9-間)津貼(職工號,年終獎金,加班獎金,其他獎金)其中,標(biāo)有下劃線的字段表示為該數(shù)據(jù)表的主碼,即主關(guān)鍵字。在上面的實體以及實體之間關(guān)系的基礎(chǔ)上,形成數(shù)據(jù)庫中的表格以及各個表格之間的關(guān)系。工資信息管理系統(tǒng)數(shù)據(jù)庫中各個表格的設(shè)計結(jié)果如下面的幾個表格所示。每個表格表示在數(shù)據(jù)庫中的一個表。表一:員工信息表:列名數(shù)據(jù)類型可否取空備注說明noCharNOT職工號(主(8)NULL鍵)nameChar(10)NOT職工姓名NULLgwChar(20)NOT部門崗位NULLglSmallintNOT工齡NULL-10-hm Char(11) NULL 電話號碼mi Smallint NOT 登錄密碼NULL表二:工資表:列名數(shù)據(jù)類型可否取空備注說明noChar(8)NOT職工號(主NULL鍵)JbmoneyNOT基本工資NULLylmoneyNULL醫(yī)療保險SwmoneyNULL個人所得稅kcmoneyNULL缺勤扣除JtmoneyNULL津貼yzmoneyNOT月總工資NULL表三:員工考勤信息表列名 數(shù)據(jù)類型 可否取空 備注說明-11-noChar(8)NOT職工號(主NULL鍵)tsInt(4)NULL缺勤天數(shù)lbChar(30)NULL缺勤類別SjChar(10)NULL缺勤時間表四:津貼信息表列名數(shù)據(jù)類型可否為空備注說明noChar(8)NOT職工號(主NULL鍵)JiabanmoneyNULL月加班獎金nzmoneyNULL年終獎金qtmoneyNULL其他獎金3.功能模塊詳細設(shè)計3.1主界面及工資基本信息界面的設(shè)計-12-圖2.8 歡迎畫面-13-圖2.9登錄界面圖3.0 系統(tǒng)主界面-14-圖3.1 考勤信息錄入,修改,刪除,查詢界面3.2功能描述主界面通過菜單將各個模塊連接起來工資基本信息模塊工資基本信息的添加、修改和刪除等基本-15-操作3.3主要源代碼classzzlcimplementsActionListener{JFrameframe=newJFrame(" 歡迎進入 ZZLC工資管理系統(tǒng)");JLabellabel=newJLabel("制作人:康慧博夏真珍梁麗元",JLabel.CENTER);JButtonbutton1=newJButton("進入系統(tǒng)");JButtonbutton2=newJButton("退出系統(tǒng)");ImageIconim=newImageIcon("1.jpg");JLabela1=newJLabel(im);-16-voidCreate(){JPanelpcontentPane=(JPanel)frame.getContentPane();JPanelpcontentPane1=newJPanel();pcontentPane.add(label);pcontentPane.setLayout(newFlowLayout());pcontentPane.add(button1);pcontentPane.add(button2);pcontentPane.add(newLabel(""));pcontentPane.add(a1);pcontentPane.setBackground(Color.pink);pcontentPane.setVisible(true);button1.addActionListener(this);button2.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();-17-frame.setBounds(200,100,550,600);frame.setVisible(true);}publicstaticvoidmain(String[]args){zzlcdome=newzzlc();dome.Create();}publicvoidactionPerformed(ActionEvente){if(button1.equals(e.getSource())){DLdl=newDL();dl.create();}if(button2.equals(e.getSource())){// 退出System.exit(0);}}}-18-classDLimplementsActionListener{JFrameframe=newJFrame("職工/管理員登陸");JLabellabel1=newJLabel(" 用戶名");JLabellabel2=newJLabel(" 密碼");JButtonlogonButton1=newJButton(" 管理員登錄");JButtonlogonButton2=newJButton(" 職工登錄");JButton cancelButton=new JButton(" 退出");JTextFieldt1=newJTextField(0);JTextFieldt2=newJTextField(0);ImageIconim=newImageIcon("2.jpg");JLabela2=newJLabel(im);JTextFieldusername=newJTextField(9);JPasswordFieldpassword=newJPasswordField(9);voidcreate(){JPanelp=(JPanel)frame.getContentPane();-19-JPanelp1=newJPanel();p.setLayout(newFlowLayout());p.add(label1);p.setSize(5,5);p.setLocation(4,8);p.add(username);p.setSize(100,200);p.setLocation(800,800);p.add(label2);p.setSize(50,20);p.setLocation(40,80);p.add(password);p.setSize(100,20);p.setLocation(80,120);p.add(logonButton1);p.add(newJLabel(" "));p.add(logonButton2);p.add(newJLabel(" "));p.add(cancelButton);p.add(newJLabel(" "));p.add(a2);p.add(t1);-20-p.add(t2);p.setBackground(Color.red);p.setVisible(true);logonButton1.addActionListener(this);logonButton2.addActionListener(this);cancelButton.addActionListener(this);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.pack();frame.setBounds(200,100,750,550);frame.setVisible(true);}publicvoidactionPerformed(ActionEvente){if(logonButton1.equals(e.getSource())&&(username.getText().equals("123")==true)&&(password.getText().equals("123")==true)){GZGLZJMgz=newGZGLZJM();-21-gz.create();}else{JOptionPane.showMessageDialog(null,"對不起,你輸入的密碼錯誤!");};if(logonButton2.equals(e.getSource())&&(username.getText().equals(t1.getText())==true)&&(password.getText().equals(t2.getText())==true)){XKxk=newXK();xk.create();Connectioncon;Statementsql;ResultSetrs;Vectorvector=newVector();try{-22-}try{con =DriverManager.getConnection("jdbc:odbc:123","","");sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);sql.executeQuery("SELECT Gno,mmFROMYWHEREGno="+t1.getText()+"ANDmm="+t2.getText());}catch(SQLExceptione1){}}if(cancelButton.equals(e.getSource())){System.exit(0);}}-23-}classGZGLZJMextendsJFrameimplementsActionListener{JFramef=newJFrame("工資管理系統(tǒng)");JButtonb1=newJButton(" 津貼管理");JButtonb2=newJButton(" 總查詢");JButtonb3=newJButton(" 工資管理");JButtonb4=newJButton(" 后勤管理");JButtonb6=newJButton(" 員工個人信息管理");JButtonb5=newJButton(" 返回");ImageIconim=newImageIcon("3.jpg");JLabela3=newJLabel(im);voidcreate(){JPanelp=(JPanel)f.getContentPane();JPanelp1=newJPanel();p.setLayout(newFlowLayout());p.add(b1);p.add(newJLabel(" "));p.add(b6);-24-p.add(newJLabel(" "));p.add(b3);p.add(newJLabel(" "));p.add(b4);p.add(newJLabel(" "));p.add(b2);p.add(newJLabel(" "));p.add(b5);p.add(a3);p.setBackground(Color.red);p.setVisible(true);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);b6.addActionListener(this);f.setBounds(200,100,800,600);f.setVisible(true);}publicvoidactionPerformed(ActionEvent-25-e){if(b5.equals(e.getSource())){// 返回DLd=newDL();f.dispose();}if(b1.equals(e.getSource())){// 津貼管理JTGLjt=newJTGL();jt.create();}if(b6.equals(e.getSource())){// 員工個人信息管理YGGLyg=newYGGL();yg.create();}if(b2.equals(e.getSource())){// 查詢XKxk=newXK();xk.create();}if(b4.equals(e.getSource())){// 后勤管理KQGLkq=newKQGL();-26-kq.create();}if(b3.equals(e.getSource())){//工資管理GZGLgz=newGZGL();gz.create();}}}classKQGLimplementsActionListener{JFramef=newJFrame("錄入修改刪除考勤信息");JButtonb1=newJButton(" 錄入");JButtonb2=newJButton(" 修改");JButtonb3=newJButton(" 刪除");JButtonb4=newJButton(" 查詢所有");JButtonb5=newJButton(" 返回");JTextFieldtf1=newJTextField(4);JTextFieldtf2=newJTextField(4);JTextFieldtf3=newJTextField(4);JTextFieldtf4=newJTextField(4);JTextFieldtf5=newJTextField(6);JButtonb6=newJButton(" 查詢單人考勤-27-");String[]cloum={" 職工號","缺勤天數(shù)","缺勤類別","缺勤時間"};Object[][]row=new Object[50][4];JTabletable=newJTable(row,cloum);JScrollPanescrollpane=newJScrollPane(table);JSplitPanesplitpane=newJSplitPane(JSplitPane.VERTICAL_SPLIT);voidcreate(){JPanelp=(JPanel)f.getContentPane();p.setLayout(newFlowLayout());//p.add(scrollpane);p.add(splitpane);JPanelp1=newJPanel();p1.add(b1);p1.add(b2);p1.add(b3);-28-p1.add(b4);p1.add(b6);p1.add(b5);JPanelp2=newJPanel();p2.setBackground(Color.red);p2.add(scrollpane);JPanelp3=newJPanel();p.setLayout(newFlowLayout());p.add(newJLabel(""));p.add(newJLabel(" 職工號"));p.add(tf1);p.add(newJLabel(" 缺勤天數(shù)"));p.add(tf2);p.add(newJLabel(" 缺勤類別"));p.add(tf3);p.add(newJLabel(""));p.add(newJLabel(" 缺勤時間"));p.add(tf4);-29-p.add(newJLabel(" 在此處輸入職工號點擊查詢刪除 "));p.add(tf5);splitpane.add(p1,splitpane.TOP);splitpane.add(p2,splitpane.BOTTOM);splitpane.setDividerLocation(50);p.setBackground(Color.CYAN);b1.addActionListener(this);b2.addActionListener(this);b3.addActionListener(this);b4.addActionListener(this);b5.addActionListener(this);b6.addActionListener(this);f.setBounds(200,100,500,600);f.setResizable(true);// 可以調(diào)整界面大-30-小f.setVisible(true);}public voidactionPerformed(ActionEvente){if(b1.equals(e.getSource())){ // 添加Connectioncon;Statementsql;ResultSetrs;try{} catch(ClassNotFoundException e1){-31-}try{con=DriverManager.getConnection("jdbc:odbc:123","","");sql=con.createStatement();String insertStr = "INSERTINTOKVALUES"+"("+"'"+tf1.getText()+ "'" + "," + tf2.getText()+"," + "'"+tf3.getText()+"'" +","+tf4.getText()+")";sql.executeUpdate(insertStr);con.close();}}if(b2.equals(e.getSource())){// 修改Connectioncon;Statementsql;-32-ResultSetrs;try{} catch(ClassNotFoundException e1){}try{con=DriverManager.getConnection("jdbc:odbc:123","","");sql=con.createStatement();sql.executeUpdate("UPDATE KSETts="+tf2.getText()+"WHEREKno="+tf1.getText()+"");sql.executeUpdate("UPDATE KSET lb="+tf3.getText()+"WHEREKno="+tf1.getText()+"");sql.executeUpdate("UPDATE KSET sj="+tf4.getText()+"WHERE-33-Kno="+tf1.getText()+"");con.close();}}if(b3.equals(e.getSource())){// 刪除Connectioncon;Statementsql;ResultSetrs;try{} catch(ClassNotFoundException e1){}try{-34-con =DriverManager.getConnection("jdbc:odbc:123","","");sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);sql.executeUpdate("DELETEFROMKWHEREKno="+tf5.getText());con.close();}catch(SQLExceptione1){}}if(b4.equals(e.getSource())){// 查詢?nèi)緾onnectioncon;Statementsql;ResultSetrs;Vectorvector=newVector();-35-try{}try{con =DriverManager.getConnection("jdbc:odbc:123","sa","");sql=con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);if(b4.equals(e.getSource())){for(inti=0;i<50;i++)for(intj=0;j<4;j++)table.setValueAt("",i,j) ;rs=sql.executeQuery("SELECT*FROMKORDERBY-36-KnoDESC");intk=-1;while(rs.next()){++k;StringKno=rs.getString(1);Stringts=rs.getString(2);Stringlb=rs.getString(3);Stringsj=rs.getString(4);table.setValueAt(Kno,k,0);table.setValueAt(ts,k,1);table.setValueAt(lb,k,2);table.setValueAt(sj,k,3);}}}catch(SQLExceptione1){}}-37-if(b6.equals(e.getSource())){ //查詢關(guān)鍵字Connectioncon;Statementsql;ResultSetrs;Vectorvector=newVector();try{}try{con =DriverManager.getConnection("jdbc:odbc:123","sa","");sql=con.createStatement(ResultSet.TYPE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中秋晚會結(jié)束致辭范文(11篇)
- 云南省防汛抗旱減災(zāi)工作講話稿(7篇)
- 中學(xué)的軍訓(xùn)心得體會
- 買衣服課件教學(xué)課件
- 影像科圖像質(zhì)量評價
- 安全實踐課件教學(xué)課件
- 建筑和土木工程 詞匯 第3部分:可持續(xù)性術(shù)語 編制說明
- 愛立信系列基站設(shè)備知識培訓(xùn)
- 人像插畫課件教學(xué)課件
- 電力拖動課件教學(xué)課件
- 全國優(yōu)質(zhì)課一等獎初中八年級物理《平面鏡成像》公開課課件
- 就業(yè)指導(dǎo)課第三章求職過程指導(dǎo)課件
- 油菜籽+市場營銷
- 裁員計劃表(詳細版)
- 2024屆高考語文復(fù)習(xí):議論文主體段落寫作指導(dǎo) 課件
- 電子與通信技術(shù)專業(yè)英語 第6版 課件 6版 Project 18 New words and phrases
- 一代-二代-三代測序原理
- 中考語文一輪專題復(fù)習(xí):古詩文聯(lián)讀
- 部編小學(xué)語文三下三單元(《紙的發(fā)明》《趙州橋》)大單元教學(xué)課件
- 第5課 文化變革美術(shù)發(fā)展-20世紀(jì)初中國畫的變革與文化理解 課件-2023-2024學(xué)年高中美術(shù)魯美版美術(shù)鑒賞
- 合規(guī)管理體系標(biāo)準(zhǔn)解讀及建設(shè)指南
評論
0/150
提交評論