数据库课程设计可修改docWord文档下载推荐.docx
《数据库课程设计可修改docWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据库课程设计可修改docWord文档下载推荐.docx(23页珍藏版)》请在冰点文库上搜索。
b.本项目的任务提出者:
刘嫔;
开发者:
邹雪梅;
用户:
小型企业财务部门;
实现该软件的计算中心或计算机网络:
中南大学科技楼
1.2编写目的
1.1.1为开发人员、维护人员、客户之间提供共同的协议而创立基础,对企业管理软件功能的实现作使命描述。
1.1.2本说明书的预期读者为客户、业务或需求分析人员、测试人员、用户文档编写者、项目管理人员。
1.3软件定义
工资管理系统:
它是由邹邹雪梅在老师指导下完全自主开发的工资管理服务系统。
需求:
用户解决问题或达到目标所需的条件或功能;
系统或系统部件要满足合同、标准,规范或其它正式规定文档所需具有的条件或权能。
需求分析:
包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并找出其中的错误,遗憾或其它不足的地方。
模块的独立性:
是指软件系统中每个模块只涉及软件要求的具体的子功能,而和软件系统中其他的模块的接口是简单的。
1.4开发环境
硬件环境:
a.处理器PentiumⅡ以上;
b.内存容量256M以上;
c.外存容量128M以上;
d.服务器一台,客户端若干台;
e.数据通信设备internet或局域网;
f.功能键是通过鼠标、键盘来进行操作;
软件支持:
操作系统:
XP
办公软件:
Office2003
编程语言:
C#,ASP.NET等等
数据库:
SQLServer2000
开发工具:
VisualStudio2005、SQLSERVER2000、MSDN等
二需求分析
工资管理系统要求具备如下基本功能:
1、基本工种、基本工资的管理;
2、公司部门、部门津贴、员工的管理;
3、加班类型、加班津贴的管理;
4、公司员工的考勤信息管理;
5、公司员工月工资管理
月工资=基本工资+部门津贴+加班津贴-被扣工资
6、查询统计上述信息,进行企业工资报表
7、完整性要求
数据完整性是指数据的精确性和可靠性,首先就是实体的完整性,就是指每一行记录在表中是唯一的实体,不能插入有重复主码的记录。
再一个就是参照完整性,是指两个表的主关键字和外关键字的数据对应一致,防止数据的丢失或者无意义的数据在数据库中的扩散。
表现在:
a禁止在表中插入包含主表中不存在的关键字的数据行。
b禁止删除在从表中的有对应记录的主表记录。
完整性问题可以通过一些工具来实现,如:
规则,约束,触发器等。
三数据库设计
1E-R图
2数据字典
加班信息:
部门信息:
员工信息:
工种信息:
考勤信息:
3存储过程
等等。
。
4文件组织结构
四主要功能实现
1各模块功能说明
基本工种、基本工资的管理:
实现基本工种、基本工资的增删改查;
公司部门、部门津贴:
实现公司部门、部门津贴的增删改查;
员工管理:
实现员工信息的增删改查;
加班类型、加班津贴的管理:
实现加班类型、加班津贴增删改查;
公司员工的考勤信息管理:
各部门考勤管理;
公司员工月工资管理:
各部门月工资的管理。
2主要界面
一主界面
二基本工种、基本工资的管理
三员工管理
四加班信息管理
五月工资管理
六考勤信息管理
五部分主要代码
部门管理模块:
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceSalary_Manage
{
publicpartialclassfrmDepart:
Form
{
publicintiORu=0;
DataTabledt=newDataTable();
intD_id;
publicfrmDepart()
InitializeComponent();
this.dgv0.ColumnHeadersDefaultCellStyle.Font=newFont("
宋体"
10,FontStyle.Bold,GraphicsUnit.Point);
this.dgv0.ColumnHeadersDefaultCellStyle.BackColor=SystemColors.GradientInactiveCaption;
this.dgv0.ColumnHeadersBorderStyle=DataGridViewHeaderBorderStyle.Single;
this.dgv0.ColumnHeadersDefaultCellStyle.Alignment=DataGridViewContentAlignment.MiddleCenter;
this.dgv0.DefaultCellStyle.Font=newFont("
9,FontStyle.Regular,GraphicsUnit.Point);
this.dgv0.DefaultCellStyle.BackColor=Color.Empty;
this.dgv0.CellBorderStyle=DataGridViewCellBorderStyle.Single;
this.dgv0.GridColor=SystemColors.ControlDarkDark;
this.dgv0.SelectionMode=DataGridViewSelectionMode.FullRowSelect;
this.dgv0.DefaultCellStyle.WrapMode=DataGridViewTriState.True;
this.dgv0.AutoSizeColumnsMode=DataGridViewAutoSizeColumnsMode.Fill;
this.dgv0.AutoSizeRowsMode=DataGridViewAutoSizeRowsMode.AllCells;
showInfo();
D_id=Convert.ToInt32(this.dgv0.CurrentRow.Cells[0].Value);
}
privatevoidshowInfo()
dgv0.Columns.Clear();
dt=DBOperation.getAll_Depart().Tables[0];
dgv0.DataSource=dt;
bind(dt);
///将dgv0与userpagetool1绑定
publicvoidbind(DataTabletable)
this.userPageTool1.Dgv=this.dgv0;
if(table.Rows.Count>
0)
this.userPageTool1.Dt=table;
this.userPageTool1.InitDataSet(20);
privatevoidbuttonWithStyle4_Click(objectsender,EventArgse)
this.Close();
privatevoidbuttonWithStyle1_Click(objectsender,EventArgse)
this.iORu=0;
frmEditDepartej=newfrmEditDepart(this);
ej.Visible=true;
privatevoidbuttonWithStyle2_Click(objectsender,EventArgse)
this.iORu=1;
privatevoidbuttonWithStyle3_Click(objectsender,EventArgse)
DialogResultresult=MessageBox.Show("
确定要删除该项?
"
"
信息提示"
MessageBoxButtons.OKCancel,MessageBoxIcon.Question);
if(result==DialogResult.OK)
if(DBOperation.Update(string.Format("
deletefromT_Departwhered_ID='
{0}'
Convert.ToInt32(this.dgv0.CurrentRow.Cells[0].Value)))==1)
MessageBox.Show("
删除成功!
MessageBoxButtons.OKCancel,MessageBoxIcon.Information);
DataTabledt1=newDataTable();
dt1=DBOperation.getAll_Depart().Tables[0];
dgv0.DataSource=dt1;
}
工资管理模块
publicpartialclassfrmSalary:
stringmonth;
publicfrmSalary(stringselectitems)
this.month=selectitems;
//D_id=Convert.ToInt32(this.dgv0.CurrentRow.Cells[0].Value);
publicvoidshowInfo()
DataTabledt=DBOperation.Query(string.Format("
selecte_IDfromT_Employee"
)).Tables[0];
for(inti=0;
i<
dt.Rows.Count;
i++)
DBOpute_month_salary(dt.Rows[i][0].ToString(),month);
stringsql=string.Format("
selecte_IDas'
员工编号'
e_nameas'
员工姓名'
month_salaryas'
工资'
fromT_Employee"
);
DataTabledt2=DBOperation.Query(sql).Tables[0];
dgv0.DataSource=dt2;
bind(dt2);
privatevoidbuttonX1_Click(objectsender,EventArgse)
六心得体会
这次课程设计是我从大一一直做课程设计做到现在,觉得最有难度的一次了,不过也正是因为最有难度,所以才感觉有了最大的收获,由于在实验室已经学习了一段时间的C#编程,所以这次课程设计也成了我再一次对于C#编程的锻炼,我采用了C#作为这个系统的编程语言。
系统做好之后,感觉自己收获到的东西都是非常大的,这让我对于这些天的劳累感到了莫大的补偿。
七参考资料
VisualC#2005-语言基础、数据库系统开发、Web开发人民邮电出版社
容钦科技.ASP+DreamweaverMX2004数据库网站开发与实例.北京:
清华大学出版社,2001年:
23-179
杨仁毅,金卫臣.DreamweaverMX实例教程.北京:
机械工业出版社,2000年:
210-290
吴晨,孙少波.ASP数据库项目案例导航.北京:
清华大学出版社.2004年11月第一版,2001年:
60-89
黄荔,基于客户/中间服务器/数据库服务器的三层结构,兵工自动化,2000,(4):
15-17
数据库系统概念AbrahamSilberschatzHenryF.KorthS.Sudarshan著,高等教育出版社
龙马工作室.ASP+SQLServer组建动态网站.北京:
人民邮电出版社,2002年:
20-190