工资管理系统C# 数据库课程设计.docx

上传人:b****8 文档编号:9707882 上传时间:2023-02-05 格式:DOCX 页数:28 大小:381.16KB
下载 相关 举报
工资管理系统C# 数据库课程设计.docx_第1页
第1页 / 共28页
工资管理系统C# 数据库课程设计.docx_第2页
第2页 / 共28页
工资管理系统C# 数据库课程设计.docx_第3页
第3页 / 共28页
工资管理系统C# 数据库课程设计.docx_第4页
第4页 / 共28页
工资管理系统C# 数据库课程设计.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

工资管理系统C# 数据库课程设计.docx

《工资管理系统C# 数据库课程设计.docx》由会员分享,可在线阅读,更多相关《工资管理系统C# 数据库课程设计.docx(28页珍藏版)》请在冰豆网上搜索。

工资管理系统C# 数据库课程设计.docx

工资管理系统C#数据库课程设计

 

数据库课程设计

 

设计题目:

工资管理系统

班级:

BX0901

学号:

姓名:

一绪论··········································3

二需求分析·······································3

三概要设计·······································4

四物理设计·······································5

五详细设计·······································6

六调试分析·······································9

七小结·············································16

八参考文献···········································16

 

一、绪论

随着计算机技术的飞速发展和经济体制改革的不断深入,传统企业管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。

提高公司企业管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。

基于C#与SQLserver数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。

基本上能满足管理员和公司的要求。

此次数据库课程设计的主要设计如下:

原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。

需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。

主要包括三大功能模块:

1.进入界面设计。

2.员工管理界面设计。

 

二、需求分析

功能需求分析:

该通用工资管理系统具备下列功能:

管理员通过输入用户名和密码进下该系统后,可以进行一些基本查询(员工信息查询、部门领导信息查询、工资奖金信息查询)、工资管理(基本工资及津贴奖金设定、计算总工资、津贴管理、加班工资管理);通过输入密码,可以进行查询员工的数据(工资,奖金津贴,加班情况)。

具体功能的详细描述如下

1.用户名和密码即可进入[工资管理]功能窗体,在其中输入员工的相关信息,按[查询]就可查找信息。

2.点击[工资查询界面]功能窗体,输入员工号即可查询员工工资信息.

3.点击[津贴查询界面]功能窗体,输入员工号即可查询员工津贴信息。

4.点击[添加员工]功能窗体,输入员工号,点击快速添加即可添加员工.

5.点击[删除员工]功能窗体,输入员工号,即可删除员工。

 

数据流需求分析:

登陆信息返回信息

数据库

错误信息寻找信息

数据库需求分析——数据流图

 

三、概要设计

根据需求分析阶段得到的功能需求,管理员、员工通过输入用户名号和密码进下该系统后,可以进行一些基本查询(员工工资信息查询、津贴信息查询)、还可以进行员工删除和添加员工的操作,员工通过登录并输入密码,可以进行查询自己的数据(工资,津贴).

模块功能大概可以分为如下5个方面:

这几个模块工资管理、添加和删除员工,登陆、退出。

工资管理包括基本工资查询、津贴查询,添加员工、删除员工等。

综上所述,得到客户端功能模块图如下图所示。

 

四、物理设计

1.选择[登陆]则会进入相应登陆界面。

2.选择[工资查询][津贴查询][添加员工][删除员工][显示所有]菜单命令

3。

选择[工资查询界面]菜单命令即可进入[工资查询]功能窗体。

4.选择[津贴查询界面]菜单命令即可进入[津贴查询]功能窗体。

5.选择[添加员工]菜单命令即可进入[添加员工]功能窗体。

6.选择[删除员工]菜单命令即可进入[删除员工]功能窗体.

7.选择[返回]将返回整个系统.

五、详细设计

(1)数据库的E—R图及合并部分视图生成E—R图

员工信息E—R图:

员工工资信息E—R图:

 

管理员用户E—R图:

津贴管理E—R图:

 

(2)数据库结构设计

根据上面概念结构设计阶段得到的E-R图,下一步应该将它转化为关系模型。

可以得到对应的关系模式为:

Worker(工种号,基本工资,工种名称,部门,用户名,性别,年龄)

Salary(工资,员工号,基本工资,奖金,年月,总工资)

Usemen(用户号,用户,密码)

Jintie(员工号,加班时间,加班费用,误工数,误工费)

数据库表的建立:

(sql语句及截图)

语句如下:

Createtableworker

(工种号nchar(10)primarykey,

工种名称nchar(16),

基本工资int,

部门nchar(16),

用户名nchar(16),

性别char(4)check(性别in(‘男’,’女’)),

年龄int

);

Createtablesalary

(员工号nchar(10)primarykey,

工资int,

基本工资int,

奖金int,

总工资int,

年月smalldatime

Createtableusemen

(用户号nchar(10)primarykey,

用户int,,

密码int,

 

六、调试分析

(1)数据库的表的建立与实现

Work表的建立:

Salary表的建立:

Usemen表的建立:

Jintie表的建立:

1.数据库的运行和截图:

登录界面截图,这里输入:

登录后:

查询工资界面:

津贴查询界面:

添加员工界面:

删除员工界面:

显示所有信息:

(2)调试与运行程序分析及存在的主要问题

在此次课程设计中的主要数据库部分为数据库的连接部分,该部分直接影响到数据库与应用程序的接口实现,而且必须注意数据库的名称与连接数据库是取的名称一致。

下面是连接数据库部分的代码:

 

1。

连接数据库

C#语言代码如下:

界面:

namespacelogin

publicpartialclasslogin:

Form

{

staticStringstrconn=@"server=。

\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True”;

staticSqlConnectionconn=newSqlConnection(strconn);

publiclogin()

{

InitializeComponent();

privatevoidbutton1_Click(objectsender,EventArgse)

Stringstrsql=”use工资查询系统select*fromusermanwhere用户='”

+textBox1。

Text+"'and密码='"+textBox2.Text+”’";

try

conn.Open();

SqlCommandcom=newSqlCommand(strsql,conn);

if(com.ExecuteScalar()!

=null)

this.Hide();

chaxunjiemiancx=newchaxunjiemian();

cx。

ShowDialog();

else

MessageBox。

Show("密码错误!

”);

}

catch(Exceptionce){}

finally

{conn。

Close();}

privatevoidbutton2_Click(objectsender,EventArgse)

this。

Close();

privatevoidtextBox1_TextChanged(objectsender,EventArgse)

{

}

 

添加员工:

namespacelogin

publicpartialclasstianjiayuangong:

Form

Stringstrcn=@”server=。

\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True";

publictianjiayuangong()

InitializeComponent();

 

privatevoidbutton1_Click_1(objectsender,EventArgse)

try

//stringkind=”";

charyg=newchar();

floatjbgz=newfloat();

string员工号=textBox1.Text.Trim();

string基本工资=textBox2.Text.Trim();

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=strcn;

conn。

Open();

SqlDataAdapterad=newSqlDataAdapter(”USE工资查询系统SELECT基本工资,员工号,奖金工资,总工资FROMsalarywhere员工号=’”+textBox1。

Text+"'",conn);

SqlCommandcmd1=newSqlCommand("select*fromsalary”,conn);

SqlDataAdaptersda1=newSqlDataAdapter();

sda1.SelectCommand=cmd1;

DataSetds1=newDataSet();

sda1.Fill(ds1,”salary”);

//if(ds1.Tables["FL"]。

Rows[0][0]==null)

//Loan=0.0f;

jbgz=float。

Parse(ds1.Tables["salary”].Rows[8][1].ToString())-float.Parse(ds1.Tables["salary”]。

Rows[8][0].ToString());

cmd1.CommandText="insertintosalary(员工号,基本工资)values(\'”+员工号+”\’,\'"+基本工资+"\’)”;

sda1.InsertCommand=cmd1;

sda1.Fill(ds1,”salary”);

conn.Close();

MessageBox.Show(”添加成功!

”);

catch(Exceptione2)

{

MessageBox.Show(e2.Message);

}

privatevoidtextBox1_TextChanged(objectsender,EventArgse)

}

privatevoidtextBox2_TextChanged(objectsender,EventArgse)

{

privatevoidbutton2_Click(objectsender,EventArgse)

{

this.Hide();

chaxunjiemiancx=newchaxunjiemian();

cx.ShowDialog();

}

}

}

查询工资:

namespacelogin

publicpartialclasschaxungongzi:

Form

Stringstrcn=@"server=.\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True";

publicchaxungongzi()

{

InitializeComponent();

privatevoidbutton1_Click(objectsender,EventArgse)

{

try

{

SqlConnectionconn=newSqlConnection();

conn。

ConnectionString=strcn;

conn.Open();

SqlDataAdapterad=newSqlDataAdapter(”USE工资查询系统SELECT基本工资,员工号,奖金,工资,总工资FROMsalarywhere员工号='”+textBox1.Text+"'",conn);

DataSetds=newDataSet();

ad。

Fill(ds,"student”);

DataTabletable=ds.Tables[0];

dataGridView1.DataSource=table;

catch(Exceptionce)

{MessageBox.Show(ce.Message);}

finally

{}

}

privatevoidbutton2_Click(objectsender,EventArgse)

this.Hide();

chaxunjiemiancx=newchaxunjiemian();

cx.ShowDialog();

}

}

查询界面:

namespacelogin

{

publicpartialclasschaxunjiemian:

Form

staticStringstrconn=@”server=。

\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True”;

staticSqlConnectionconn=newSqlConnection(strconn);

publicchaxunjiemian()

{

InitializeComponent();

privatevoidbutton1_Click(objectsender,EventArgse)

conn.Open();

this.Hide();

chaxungongzicx=newchaxungongzi();

cx.ShowDialog();

privatevoidbutton2_Click(objectsender,EventArgse)

{

conn.Open();

this。

Hide();

jintiechaxuncx=newjintiechaxun();

cx.ShowDialog();

}

privatevoidbutton3_Click(objectsender,EventArgse)

conn。

Open();

this。

Hide();

tianjiayuangongcx=newtianjiayuangong();

cx。

ShowDialog();

}

privatevoidbutton4_Click(objectsender,EventArgse)

{

conn。

Open();

this。

Hide();

shanchuyuangongcx=newshanchuyuangong();

cx.ShowDialog();

privatevoidbutton5_Click(objectsender,EventArgse)

conn.Open();

this.Hide();

xianshisuoyoucx=newxianshisuoyou();

cx。

ShowDialog();

}

津贴查询:

namespacelogin

publicpartialclassjintiechaxun:

Form

Stringstrcn=@”server=。

\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True";

publicjintiechaxun()

InitializeComponent();

privatevoidbutton1_Click_1(objectsender,EventArgse)

try

{

SqlConnectionconn=newSqlConnection();

conn。

ConnectionString=strcn;

conn。

Open();

SqlDataAdapterad1=newSqlDataAdapter(”USE工资查询系统SELECT员工号,加班时间,加班费用,误工数,误工费FROMjintiewhere员工号=’"+textBox1.Text+”'",conn);

DataSetds1=newDataSet();

ad1。

Fill(ds1,"student2");

DataTabletable1=ds1.Tables[0];

dataGridView1。

DataSource=table1;

}

catch(Exceptionce)

{MessageBox.Show(ce。

Message);}

finally

{}

}

privatevoidbutton2_Click(objectsender,EventArgse)

this。

Hide();

chaxunjiemiancx=newchaxunjiemian();

cx.ShowDialog();

 

删除员工界面:

namespacelogin

{

publicpartialclassshanchuyuangong:

Form

Stringstrcn=@”server=.\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True";

publicshanchuyuangong()

{

InitializeComponent();

privatevoidbutton1_Click(objectsender,EventArgse)

{

try

{

SqlConnectionconn=newSqlConnection();

conn。

ConnectionString="server=(local);uid=sa;pwd=135********;database=工资查询系统;";

SqlCommandcmd=newSqlCommand();

cmd。

CommandText="deletefromsalarywhere员工号=”+this。

textBox1。

Text+"";

//根据学生的编号来删除相应的学生的信息

cmd。

Connection=conn;

conn。

Open();//打开连接

cmd。

ExecuteNonQuery();//用ExecuteNonQuery()的方法来执行查询语句

conn。

Close();//关闭连接

}

catch(Exceptionce)

{MessageBox。

Show(ce.Message);}

finally

{}

}

privatevoidtextBox1_TextChanged(objectsender,EventArgse)

privatevoidbutton2_Click(objectsender,EventArgse)

{

try

SqlConnectionconn=newSqlConnection();

conn。

ConnectionString=”server=(local);uid=sa;pwd=13587703533;database=工资查询系统;";

SqlCommandcmd=newSqlCommand();

cmd。

CommandText="deletefromjintiewhere员工号="+this.textBox1。

Text+"";

//根据学生的编号来删除相应的学生的信息

cmd。

Connection=conn;

conn.Open();//打开连接

cmd。

ExecuteNonQuery();//用®?

ExecuteNonQuery()的方法来执行查询语句?

conn。

Close();//关闭连接

}

catch(Exceptionce)

{MessageBox。

Show(ce.Message);}

finally

{}

}

}

显示所有:

namespacelogin

publicpartialclassxianshisuoyou:

Form

Stringstrcn=@"server=。

\SQLEXPRESS;database=工资查询系统;IntegratedSecurity=True";

publicxianshisuoyou()

{

InitializeComponent();

}

privatevoidbutton1_Click(objectsender,EventArgse)

try

{

SqlConnectionconn=newSqlConnection();

conn.ConnectionString=strcn;

conn.Open();

SqlDataAdapterad=newSqlDataAdapter("USE工资查询系¦统SELECT基本工资,员工号,奖金,工资,总工资FROMsalary",conn);

DataSetds=newDataSet

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1