2022年数据库课程设收集 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年数据库课程设收集 .pdf》由会员分享,可在线阅读,更多相关《2022年数据库课程设收集 .pdf(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库原理课程设计报告人事管理系统学生姓名:学号:班级:指导老师:日期:西北民族大学计算机科学与信息工程学院名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 41 页 - - - - - - - - - 1 设计目标使用人事管理系统,便于公司领导掌握人员的动向,及时调整人才的分配。本系统主要维护新员工资料;详细记录人事变动, 包括岗位和部门的调整; 员工信息的查询和修改, 包括员工个人信息和密码等; 作为公司人事管理信息系统的基础部分, 它为其他子系统如考勤管理系统,工资管
2、理系统等, 提供员工的基本信息。根据系统功能的要求, 人事管理系统可以分为新员工档案的输入,人事变更,员工档案的修改和查询等模块。2 功能设计企业人事管理系统主要用于员工个人资料的录入,职务变动的记录和管理。使用人事管理系统, 便于公司领导掌握人员的动向,及时调整人才的分配。 本系统是公司人事管理信息系统的基础部分,它为其他子系统, 如考勤管理系统, 工资管理系统和员工培训系统, 提供员工的基本信息。 同时为其他系统提供了员工登录的密码认证和权限分配功能。人事管理系统在设计时主要考虑以下几项功能要求:新员工资料的输入。人事变动的详细记录,包括岗位和部门的调整。员工信息的查询和修改,包括员工个人
3、信息和密码等。为了更好的理解该系统和读懂该系统的源码,读者应对以下的知识点有所了解:MS SQL SERVER 2000数据库操作的基础知识。ODBC 数据源基础知识。基本的 SQL语句,如添加,查询,修改和删除记录语句。Visual C+界面设计和关于数据库的基础知识。3数据库设计3.1 数据库设计3.1.1 数据库需求分析根据数据流程图,可以列出以下数据项和数据结构:员工信息:员工号,密码,权限,姓名,性别,生日,部门,职务,教育程度,专业,通讯地址,电话,E-mail,当前状态和其他。人事变动:记录号,员工,变动和详细描述。所需的外部数据支持。部门设置:部门编号,名称等。名师资料总结 -
4、 - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 41 页 - - - - - - - - - 3.1.2 数据库概念结构设计人事管理系统的 E-R 图如图 3-1 所示。图 3-1 人事管理系统 E-R 图3.1.3 数据库逻辑结构设计与实现根据系统 E-R 图, 本系统需要有 2 个数据表分别来存放员工个人信息和人事变动记录。 并且需要一个外部数据表 (部门信息) 的支持。 同时部分记录字段要用代码来表示, 银次需要 3 个代码表来分别记录教育程度,职务和人事变更的代码。最后,设立一个
5、计数器数据表用于实现员工号的自动分配。这 7 个数据表用Access 2000 实现,Access 2000 中的设计视图如表3-13-7 所示。其中数据类型的细节应根据具体字段分别设置,如PERSON 表的ID 字段大小为6,AUTHORITY 字段, SEX 字段, EDU_LEVE L 字段和 STATE 字段的大小为1,DEPARTMENT 字段, JOB 字段的大小为 3。表 3-1 员工个人信息表( PERSON)字段名称数据类型说明ID 文本员工号PASSWD 文本密码人事变动记录员工部门描述记录编号变动变 动 -员工变动时间归属管理部门编号名称简介联系地址员工密码当前状态联系电
6、话员工号Email 生日职位学历专业性别姓名权限名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 41 页 - - - - - - - - - AUTHORITY 文本用户权限NAME 文本姓名SEX 文本性别BIRTHDAY 日期/时间生日DEPARTMENT 文本所在部门JOB 文本职务EDU_LEVEL 文本受教育程度SPECIALTY 文本专业技能ADDRESS 文本家庭住址TEL 文本联系电话EMAIL 文本电子信箱STATE 文本当前状态(T-员工,F-非员工)
7、REMARK 文本备注表 3-2 人事变更记录表(PERSONNEL)字段名称数据类型说明ID 数字记录编号PERSON 文本员工号CHANGE 文本变更代码RECORD_TIME 日期/时间记录时间DESCRIPTION 备注详细记录表 3-3 L受教育程度代码表(EDU_LEVE)字段名称数据类型说明CODE 文本代码DESCRIPTION 文本描述表 3-4 职务代码表( JOB)字段名称数据类型说明CODE 文本代码DESCRIPTION 文本描述表 3-5 人事变动代码表( PERSONNEL_CHANGE)字段名称数据类型说明CODE 文本代码DESCRIPTION 文本描述表 3
8、-6 计数器表( COUNTER)字段名称数据类型说明ID 文本计数器编号COUNTER_VALUE 数字计数值DESCRIPTION 文本描述名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 41 页 - - - - - - - - - 表 3-7 部门信息表( DEPARTMENT)字段名称数据类型说明ID 文本部门编号NAME 文本部门名称MANGER 文本部门经理INTRO 备注简介3.1.4 初始数据的输入本例中需要输入的初始数据包括:部门信息,计数器,受教育程度
9、代码,职务代人事变动代码。部门信息和职务代码可以根据需要设置。计数器和另外的两种代码的设置如表 3-8表 3-10 所示。表 3-8 计数器设置计数器编号说明P 员工编号C 人事变更记录编号表 3-9 受教育程度代码代码说明0 小学1 初中2 高中3 职高4 大本5 大专6 硕士7 博士8 博士后表 3-10 人事变更代码代码说明0 新员工加入1 职务变动2 辞退3.2 系统设计3.2.1 系统功能分析名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 41 页 - - -
10、- - - - - - 人事管理系统主要有以下几项功能要求:新员工资料的输入。自动分配员工号,并且设置初始的用户密码。人事变动的详细记录,包括岗位和部门的调整。员工信息的查询和修改,包括员工个人信息和密码等。3.2.2系统功能模块设计根据系统功能的要求, 可以将系统分解成几个功能模块来分别设计,功能模块如图 3-2 所示。图 3-2 人事管理系统功能模块图3.2.3数据流程图系统的数据流程图如图3-3 所示,所有数据由人事科管理人员输入。人事管理系统新员工档案输入人事变更员工档案查询修改名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
11、 - 名师精心整理 - - - - - - - 第 6 页,共 41 页 - - - - - - - - - 图 3-3 人事管理系统数据流程图下面是系统运行时主要界面信息。启动程序,首先出现主框架窗口。 但是由于没有登录服务器, 大部分菜单项都是不可用的。只有“连接” , “关于”和“退出”菜单可选。单击“连接”菜单和工具条相应按钮会弹出“登陆”窗口,如图3-4 所示。登陆界面允许修改 ODBC 数据源名称,无需重新编译程序。图 3-4 登录对话框登录后,相关菜单会被激活。 此时可以单击菜单或相应的工具条按钮来弹出相应的子框架窗口和视图。在MDI 模式下, 3 个功能窗口可以同时被显示,如图
12、3-5 所示。招聘新员工员工辞退岗位调整分配员工号员工信息数据人事变动记录人事科个人信息查询名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 41 页 - - - - - - - - - 图 3-5 人事管理系统“增加新员工” 子窗口中,员工号和密码会自动按顺序生成,并且不允许修改。“人事变动” 和“员工信息查询修改” 子窗口中, 须先输入员工号,确认显示的信息后才可进行相关的修改。产生的3 个窗体列在“窗口”菜单下。当鼠标在菜单项上移动时,状态栏中会自动显示菜单项的Pro
13、mpt 属性的内容。“窗口”菜单中的4项功能是标准的窗口排列功能。3.3 生成程序框架在本章中,将使用不支持文档/ 视图体系( Document/View architecture)的多文档界面( Multiple-Document Interface, MDI )的结构来开发数据库管理程序。MDI结构包括一个主框架窗口和若干个子框架窗口,子框架窗口可包含文档类和相关的视图,如果使用文档类, MDI 文档模板类 CMultiDocTemplate 将为文档类和视图之间提供方便的联系,可简化编程的工作量。在本实例中不使用文档类,因此没有创建文档模板类的对象,此外实例中还创建了自己的视图以实现相关
14、功能。MDI 界面可以方便地在各个子窗口之间切换。典型的MDI 结构软件如 Microsoft 的 Office 系列软件。在这里 ,用AppWizard 生成程 序框 架,且 手工 加入 数据 库支 持。在MFC AppWizard-Step1 中选择 Multiple document项,并去掉 Document/View architecturesupport?选项。其余均采用默认配置。 这样生成的程序中包含CTestApp( 设应用程序名为 Test ) ,CMainFrame,CChildFrame,CChildView 和 CAboutDlg 五个类。由于子框名师资料总结 - -
15、-精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 41 页 - - - - - - - - - 架类 CChildFrame 中自动创建 CChildView 类,而此类并非所需, 因此在程序中将不用 CChildFrame和 CChildView 类,而创建自己的子框架和视图。用 Class Wizard创建一个新的子框架类CTheChildFrame, 基类为 CMDIChildWnd , 程序中将用此子框架 类包 含视 图, 因程 序的 功能主 要在 视图 中实 现 , 故无 需修 改默
16、认创 建的CTheChildFrame类。本程序数据库的操作是通过MFC 的 ODBC 类实现的。为了使用ODBC 类,需要在 stdafx.h中加入 #include“afxdb.h”一行。因本程序只需要连接一个数据库,所以定义了一个CDatabase型的全局变量db, 一次性的打开和关闭数据库,方便程序的编写。3.4 主框架窗口设计3.4.1 菜单的创建用 VisualC+6.0 的菜单编辑器( Menu Editor) 可以会让你方便的创建菜单。在菜单编辑器中打开的设计窗口如图3-6 所示。AppWizard 创建的程序默认有两个菜单: IDR_MAINFRAME为主框架窗口所用,IDR
17、_TESTTYPE(设应用程序名为Test ) 为子框架窗口所用。因本例中没有用默认的子框架, 所以将 IDR_TESTTYPE 菜单删去,同时重新编辑 IDR_MAINFRAME菜单,菜单属性设置如表3-11 所示。图 3-6 菜单编辑器窗口表 3-11 菜单属性表菜单栏菜单项属性取值(说明)系统Caption &S 系统名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 41 页 - - - - - - - - - 连接ID ID_SYSTEM_CONNECT Capti
18、on &C 连接tF2 Prompt 连接到服务器断开连接ID ID_SYSTEM_DISCONNECT Caption &D 断开连接 tF3 Prompt 断开当前连接分割线选中 SEPARATOR属性退出ID ID_APP_EXIT Caption &X 退出tCtl+Q Prompt 关闭整个应用程序人事管理Caption &M 人事管理增加新员工ID ID_MANAGE_ADD Caption &增加新员工Prompt 输入新员工的信息人事变动ID ID_MANAGE_CHANGE Caption &C 人事变动Prompt 记录员工的职位变动查询修改ID ID_MANAGER_SE
19、ARCH Caption &S 查询修改Prompt 查询修改员工信息窗口Caption &W 窗口重叠排列ID ID_WINDOW_CASCADE Caption &C 重叠排列Prompt 重叠排列窗口水平平铺ID ID_WINDOW_TILE_HORZ Caption &H 水平平铺Prompt 水平排列窗口垂直平铺ID ID_WINDOW_TILE_VERT Caption &V 垂直平铺Prompt 垂直排列窗口最小化所有窗口ID ID_WINDOW_MINIALL Caption &M 最小化所有窗口Prompt 将所有窗口最小化帮助Caption &H 帮助关于ID ID_APP
20、_ABOUT Caption &A 关于tF1 Prompt 本程序的说明其中, “退出” 、 “重叠排序”、 “水平平铺”、 “垂直平铺”和“关于”菜单项用了系统的标准 ID,其功能已由 MFC 实现,无需另外编程。3.4.2 工具条的创建用 Visual C+6.0的工具条编辑器(Toolbar Editor) 可以很方便的编辑工具条。本程序创建的工具条如图3-7 所示,其中工具条各按钮的ID 分别对应相应的菜名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 41 页
21、 - - - - - - - - - 单项,按从左到右的次序对应的菜单项ID 如表 3-12 所示。表 3-12 工具条按钮对应的菜单项ID次序ID 1 ID_SYSTEM_CONNECT 2 ID_SYSTEM_DISCONNECT 3 ID_MANAGE_ADD 4 ID_MANAGER_CHANGE 5 ID_MANAGER_SEARCH 6 ID_WINDOW_CASCADE 7 ID_WINDOW_TILE_HORZ 8 ID_WINDOW_TILE_VERT 9 ID+APP_ABOUT 3.4.3 增加一个状态栏指示器在程序中加入一个状态栏指示器以显示登录状态。首先用增加一个资源
22、ID:ID_INDICATOR_LOGIN ,然后在 MainFrm.cpp 中找到 indicators变量的定义处,添加此 ID 至其列表,程序如下:Static UNIT indicators= ID_SEPARATOR, /status line indicator ID_INDICATOR_LOGIN, /登录状态ID_INDICATOR_CAPS, ID_INDICATOR_NUM, ID_INDICATOR_SCRL, 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1
23、1 页,共 41 页 - - - - - - - - - ; 3.4.4 程序相关代码在 CmainFrame中定义如下变量。CTheChildFrame *m_pAdd,*m_pChange,*m_pSearch; /指向 3 个功能子框架窗口BOOL m_bLogin; /登陆状态BOOL m_bltemAdd,m_blItemChange,m_bltemSearch; /菜单项及工具单按钮是否可用为了实现菜单项于工具条按钮的开发与禁用,需要通过 Class Wizard假日相应 ID的 UPDATE_COMMAND_UI处理程序如下:void CMainFrame:OnUpdateSys
24、temConnect(CCmdUI* pCmdUI) pCmdUI-Enable(!m_bLogin); / 根据登录状态改变菜单项和工具栏相应按钮状态 void CMainFrame:OnUpdateSystemDisconnect(CCmdUI* pCmdUI) pCmdUI-Enable(m_bLogin); / 根据登录状态改变菜单项和工具栏相应按钮状态 void CMainFrame:OnUpdateManageAdd(CCmdUI* pCmdUI) pCmdUI-Enable(m_bItemAdd); / 根据 m_bItemAdd 改变菜单项和工具栏相应按钮状态 void CMa
25、inFrame:OnUpdateManagerSearch(CCmdUI* pCmdUI) pCmdUI-Enable(m_bItemSearch); / 根据m_bItemSearch改变菜单项和工具栏相应按钮状态 void CMainFrame:OnUpdateManagerChange(CCmdUI* pCmdUI) / 根据 m_bItemChange改变菜单项和工具栏相应按钮状态pCmdUI-Enable(m_bItemChange); CMainFrame类的构造函数中需要初始化一些变量。CMainFrame:CMainFrame() / TODO: add member init
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据库课程设收集 2022 数据库 课程 收集
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内