工资管理系统C# 数据库课程设计Word文档格式.docx
- 文档编号:20615686
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:24
- 大小:381.61KB
工资管理系统C# 数据库课程设计Word文档格式.docx
《工资管理系统C# 数据库课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《工资管理系统C# 数据库课程设计Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。
需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。
主要包括三大功能模块:
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)
}
添加员工:
{
publicpartialclasstianjiayuangong:
Stringstrcn=@”server=.\SQLEXPRESS;
database=工资查询系统;
IntegratedSecurity=True"
publictianjiayuangong()
privatevoidbutton1_Click_1(objectsender,EventArgse)
//stringkind=”"
charyg=newchar();
floatjbgz=newfloat();
string员工号=textBox1.Text。
Trim();
string基本工资=textBox2.Text.Trim();
SqlConnectionconn=newSqlConnection();
conn.ConnectionString=strcn;
Open();
SqlDataAdapterad=newSqlDataAdapter(”USE工资查询系统SELECT基本工资,员工号,奖金工资,总工资FROMsalarywhere员工号=’”+textBox1.Text+”'
"
,conn);
SqlCommandcmd1=newSqlCommand(”select*fromsalary"
,conn);
SqlDataAdaptersda1=newSqlDataAdapter();
sda1。
SelectCommand=cmd1;
DataSetds1=newDataSet();
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。
Tables[”salary”].Rows[8][0].ToString());
cmd1.CommandText="
insertintosalary(员工号,基本工资)values(\’”+员工号+"
\’,\’”+基本工资+”\'
)"
sda1.InsertCommand=cmd1;
Fill(ds1,”salary"
);
Close();
MessageBox。
Show("
添加成功!
”);
catch(Exceptione2)
MessageBox.Show(e2。
Message);
privatevoidtextBox1_TextChanged(objectsender,EventArgse)
privatevoidtextBox2_TextChanged(objectsender,EventArgse)
this。
Hide();
查询工资:
publicpartialclasschaxungongzi:
Stringstrcn=@”server=.\SQLEXPRESS;
publicchaxungongzi()
privatevoidbutton1_Click(objectsender,EventArgse)
ConnectionString=strcn;
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。
{}
Hide();
chaxunjiemiancx=newchaxunjiemian();
cx。
ShowDialog();
查询界面:
publicpartialclasschaxunjiemian:
staticStringstrconn=@”server=.\SQLEXPRESS;
;
staticSqlConnectionconn=newSqlConnection(strconn);
publicchaxunjiemian()
conn.Open();
Hide();
chaxungongzicx=newchaxungongzi();
cx.ShowDialog();
jintiechaxuncx=newjintiechaxun();
privatevoidbutton3_Click(objectsender,EventArgse)
tianjiayuangongcx=newtianjiayuangong();
privatevoidbutton4_Click(objectsender,EventArgse)
conn.Open();
shanchuyuangongcx=newshanchuyuangong();
privatevoidbutton5_Click(objectsender,EventArgse)
xianshisuoyoucx=newxianshisuoyou();
}
津贴查询:
publicpartialclassjintiechaxun:
Stringstrcn=@”server=。
\SQLEXPRESS;
publicjintiechaxun()
InitializeComponent();
SqlConnectionconn=newSqlConnection();
conn.ConnectionString=strcn;
SqlDataAdapterad1=newSqlDataAdapter("
USE工资查询系统SELECT员工号,加班时间,加班费用,误工数,误工费FROMjintiewhere员工号='
”+textBox1.Text+"
DataSetds1=newDataSet();
ad1。
Fill(ds1,”student2”);
DataTabletable1=ds1。
Tables[0];
dataGridView1。
DataSource=table1;
{MessageBox。
Show(ce。
Message);
{}
this.Hide();
ShowDialog();
publicpartialclassshanchuyuangong:
Stringstrcn=@"
server=。
\SQLEXPRESS;
publicshanchuyuangong()
ConnectionString=”server=(local);
uid=sa;
pwd=135********;
”;
SqlCommandcmd=newSqlCommand();
cmd。
CommandText=”deletefromsalarywhere员工号="
+this.textBox1.Text+"
//根据学生的编号来删除相应的学生的信息
Connection=conn;
//打开连接
ExecuteNonQuery();
//用ExecuteNonQuery()的方法来执行查询语句
//关闭连接
{MessageBox.Show(ce.Message);
{}
privatevoidbutton2_Click(objectsender,EventArgse)
conn.ConnectionString="
server=(local);
cmd.CommandText="
deletefromjintiewhere员工号="
+this。
textBox1.Text+”"
cmd.Connection=conn;
ExecuteNonQuery();
//用®
?
ExecuteNonQuery()的方法来执行查询语句?
{MessageBox。
Show(ce.Message);
{}
显示所有:
publicpartialclassxianshisuoyou:
publicxianshisuoyou()
SqlDataAdapterad=newSqlDataAdapter(”USE工资查询系¦
统SELECT基本工资,员工号,奖金,工资,总工资FROMsalary”,conn);
DataSetds=newDataSet
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工资管理系统C# 数据库课程设计 工资管理 系统 C# 数据库 课程设计