软件工程数据库课程设计Word格式文档下载.docx
- 文档编号:8578648
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:37
- 大小:52.32KB
软件工程数据库课程设计Word格式文档下载.docx
《软件工程数据库课程设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《软件工程数据库课程设计Word格式文档下载.docx(37页珍藏版)》请在冰点文库上搜索。
Int(11)
可以为空
职务
Varchar(10)
部门
学历
入职日期
Dt
CREATETABLE`yuangong`(
`工号`char(10)NOTNULL,
`姓名`varchar(20)NOTNULL,
`性别`char(10)NOTNULL,
`年龄`int(11)DEFAULTNULL,
`职务`varchar(10)DEFAULTNULL,
`部门`varchar(10)DEFAULTNULL,
`学历`varchar(10)DEFAULTNULL,
`入职日期`datetimeDEFAULTNULL,
PRIMARYKEY(`工号`)
)ENGINE=InnoDBDEFAULTCHARSET=utf8
表2是请假信息表
日期
开始日期
总时间
类型
状态
CREATETABLE`qingjia`(
`日期`datetimeNOTNULL,
`开始日期`datetimeNOTNULL,
`总时间`int(11)NOTNULL,
`类型`char(10)NOTNULL,
`状态`char(10)DEFAULTNULL,
`备注`varchar(45)DEFAULTNULL,
PRIMARYKEY(`工号`,`日期`)
表3是出差信息表
结束日期
地点
Varchar(45)
CREATETABLE`chucai`(
`结束日期`datetimeNOTNULL,
`总时间`int(11)DEFAULTNULL,
`地点`varchar(45)NOTNULL,
表4是加班信息表
开始时间
结束时间
CREATETABLE`jiaban`(
`开始时间`char(10)NOTNULL,
`结束时间`char(10)NOTNULL,
表5是出勤信息表
上班时间
下班时间
迟到
Char(3)
早退
CREATETABLE`chuqin`(
`上班时间`datetimeDEFAULTNULL,
`下班时间`datetimeDEFAULTNULL,
`迟到`char(3)DEFAULTNULL,
`早退`char(3)DEFAULTNULL,
表6是时间设置表
CREATETABLE`shezhishijian`(
`上班时间`char(10)NOTNULL,
`下班时间`char(10)NOTNULL,
`总时间`char(10)DEFAULTNULL,
PRIMARYKEY(`上班时间`)
表7是权限表
密码
权限
CREATETABLE`login`(
`密码`char(10)NOTNULL,
`权限`varchar(45)NOTNULL,
3.数据库实施
首先根据自己设计的模块建立一些逻辑关系,建立一些基本表:
员工信息表(工号,姓名,性别,年龄,职务,部门,学历,入职日期)
出差信息表(员工号,日期,开始日期,总时间,地点)
请假信息表(工号,日期,开始日期,总时间,类型,状态,备注)
加班信息表(工号,日期,开始时间,结束时间,总时间)
出勤信息表(工号,日期,上班时间,下班时间,迟到,早退)
权限表(工号,密码,权限)
时间设置表(上班时间,下班时间,总时间)
出差信息表
员工信息表
请假信息表
加班信息表
出勤信息表
权限表
时间设置表
4.程序源代码
1密码修改
namespace职工考勤管理系统.master2
{
publicpartialclassMmima:
Form
{
stringUserName;
stringPwd;
publicMmima(stringa,stringb)
UserName=a;
Pwd=b;
InitializeComponent();
}
privatevoidMmima_Load(objectsender,EventArgse)
label5.Text=UserName;
privatevoidQueren_Click(objectsender,EventArgse)
if(Jiumima.Text=="
"
||Xinmima.Text=="
||Querenmima.Text=="
)
MessageBox.Show("
旧密码,新密码和确认新密码均不能为空!
\n请重新输入"
"
提示"
MessageBoxButtons.OK,MessageBoxIcon.Error);
Jiumima.Text="
;
Xinmima.Text="
Querenmima.Text="
Jiumima.Focus();
return;
else
if(Jiumima.Text==Pwd)
if(Xinmima.Text!
=Querenmima.Text)
两次输入的新密码不一致!
Xinmima.Focus();
boola=MyData.MySQL.updata("
Updateloginset密码='
+Querenmima.Text+"
'
where工号='
+label5.Text+"
);
MyData.MySQL.CloseSQL();
if(a==true)
密码修改成功!
MessageBoxButtons.OK,MessageBoxIcon.Information);
this.Close();
密码修改操作失败!
旧密码输入错误!
privatevoidQuxiao_Click(objectsender,EventArgse)
}
2当日考勤
publicpartialclassMkaoqin:
DateTimetime=Convert.ToDateTime(DateTime.Now.ToShortDateString());
publicMkaoqin()
privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse)
privatevoidbutton3_Click(objectsender,EventArgse)
privatevoidMkaoqin_Load(objectsender,EventArgse)
DataSetDS2=MyData.MySQL.dataset("
select*fromBumen"
BM"
DataRowdr2=DS2.Tables["
].NewRow();
dr2["
编号"
]="
0"
名称"
DS2.Tables["
].Rows.InsertAt(dr2,0);
this.Bumen.DataSource=DS2.Tables["
];
this.Bumen.DisplayMember="
this.Bumen.ValueMember="
privatevoidQueding_Click(objectsender,EventArgse)
if(Bumen.Text=="
请选择部门!
Bumen.Focus();
try
stringsql1="
selectYuangong.工号,姓名,Bumen.名称as部门fromYuangong,BumenwhereYuangong.工号notin(select工号fromChuqinwhere日期='
+time+"
)andBumen.编号=(select编号fromBumenwhere名称='
+Bumen.Text.Trim()+"
)andYuangong.部门=Bumen.编号"
DataSetDS1=MyData.MySQL.dataset(sql1,"
WCQ"
dataGridView1.DataSource=DS1.Tables[0];
stringsql2="
selectYuangong.工号,姓名,Bumen.名称as部门,迟到,早退fromYuangong,Bumen,ChuqinwhereYuangong.工号in(select工号fromChuqinwhere日期='
)andYuangong.工号=Chuqin.工号andYuangong.部门=Bumen.编号and日期='
DataSetDS2=MyData.MySQL.dataset(sql2,"
YCQ"
dataGridView2.DataSource=DS2.Tables[0];
catch(ExceptionE)
MessageBox.Show(E.Message);
privatevoidQuanti_Click(objectsender,EventArgse)
3.员工请假处理
publicpartialclassMqingjia:
publicMqingjia()
privatevoidMqingjia_Load(objectsender,EventArgse)
view();
publicvoidview()
stringsql="
selectQingjia.工号,Yuangong.姓名,日期as申请日期,开始日期,总时间as请假总天数,类型as请假类型,状态as是否批准,备注fromQingjia,YuangongwhereQingjia.工号=Yuangong.工号andDATEADD(dd,总时间,开始日期)>
+time+"
DataSetDS=MyData.MySQL.dataset(sql,"
QJ"
dataGridView1.DataSource=DS.Tables[0];
privatevoidPizhun_Click(objectsender,EventArgse)
intindex=dataGridView1.CurrentCell.RowIndex;
boola=false;
stringhang=dataGridView1.Rows[index].Cells[0].Value.ToString();
DateTimeRiqi=Convert.ToDateTime(dataGridView1.Rows[index].Cells[2].Value.ToString());
updateQingjiaset状态='
是'
where工号='
+hang+"
and日期='
+Riqi+"
a=MyData.MySQL.updata(sql);
员工请假已批准!
"
MessageBoxButtons.OK);
4.部门信息管理
publicpartialclassMxinjianbumen:
publicMxinjianbumen()
privatevoidMxinjianbumen_Load(objectsender,EventArgse)
Bumenhao.Focus();
privatevoidTianjia_Click(objectsender,EventArgse)
if(Bumenhao.Text=="
||Bumenming.Text=="
||int.Parse(Bumenhao.Text)>
10)
请输入部门号和部门名!
\n(部门号在1--10之间)"
Bumenhao.Text="
Bumenming.Text="
if(null!
=MyData.MySQL.sereach("
select*fromBumenwhere编号='
+int.Parse(Bumenhao.Text)+"
))
部门号重复!
请重新输入!
select*fromBumenwhere名称='
+Bumenming.Text+"
部门名称重复!
Bumenming.Focus();
insertintoBumen(编号,名称,备注)values('
+int.Parse(Bumenhao.Text)+"
'
+Bumenming.Text+"
+Bumenbeizhu.Text+"
)"
部门新建成功!
privatevoidFanhui_Click(objectsender,EventArgse)
publicpartial
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 数据库 课程设计