📄 数据库脚本.sql
字号:
/***************************创建数据库***********************************/
USE master
GO
CREATE DATABASE Renshi
GO
USE Renshi
GO
/***************************创建部门表*************************************/
CREATE TABLE Bumen
(
BumenID int PRIMARY KEY IDENTITY, --部门编号
BumenName varchar(40) NOT NULL, --部门名称
Describe varchar(400), --部门描述
UpperID int NOT NULL --上级部门编号
)
GO
/***************************创建员工*************************************/
CREATE TABLE Yuangong
(
yg_ID int PRIMARY KEY IDENTITY, --员工编号
yg_Name varchar(50) NOT NULL, --员工姓名
Photo image, --员工照片
Sex char(2), --性别
Nationality varchar(40), --民族
Birth varchar(20), --生日
Political_Party varchar(40), --政治面貌
Culture_Level varchar(40), --文化水平
Marital_Condition varchar(20), --婚姻状况
Family_Place varchar(60), --家庭住址
Id_Card varchar(20), --身份证号
BadgeID varchar(40), --工作证号
Office_phone varchar(30), --办公电话
Mobile varchar(30), --手机号
Files_Keep_Org varchar(100), --毕业院校
Hukou varchar(100), --户口所在地
HireDate varchar(20), --上岗日期
BumenID int, --所在部门ID
Position varchar(40), --工作岗位
Title varchar(20), --职务
State tinyint, --人员类型
UpperID int, --上级人员
Contract_Duration varchar(20), --合同有效期
Memo varchar(200), --备注信息
FillAdmin varchar(30), --管理员
FillDate varchar(20) --管理员填写日期
)
GO
/***************************创建家庭表*************************************/
CREATE TABLE Family
(
Id tinyint PRIMARY KEY IDENTITY,
yg_ID int NOT NULL, --员工编号
Name varchar(50) NOT NULL, --姓名
Sex char(2), --性别
Age tinyint, --年龄
Relationship varchar(20), --关系
WorkingOrg varchar(40) --工作单位
)
GO
/***************************创建工作经历表*************************************/
CREATE TABLE Jingli
(
Id tinyint PRIMARY KEY IDENTITY, --自动增加的ID
yg_ID int NOT NULL, --员工ID
StartDate char(10), --开始日期
EndDate char(10), --结束日期
Unit varchar(50), --工作单位
Title varchar(20) --担任职务
)
GO
/***************************创建考勤表*************************************/
CREATE TABLE Kaoqin
(
CheckDate char(10) NOT NULL, /*考勤日期*/
yg_ID int NOT NULL, /*员工号*/
qqDays decimal(4,1), /*全勤天数*/
ccDays decimal(4,1), /*出差天数*/
bjDays decimal(4,1), /*病假天数*/
sjDays decimal(4,1), /*事假天数*/
kgDays decimal(4,1), /*旷工天数*/
fdxjDays decimal(4,1), /*法定休假天数*/
nxjDays decimal(4,1), /*年修假天数*/
dxjDays decimal(4,1), /*倒修假天数*/
cdMinutes tinyint, /*迟到时间(分钟)*/
ztMinutes tinyint, /*早退时间*/
ot1Days decimal(4,1), /*一类加班天数*/
ot2Days decimal(4,1), /*二类加班天数*/
ot3Days decimal(4,1), /*三类加班天数*/
Memo varchar(200) /*备注信息*/
)
GO
/***************************创建考评表*************************************/
CREATE TABLE Pingjia
(
EvaMonth char(10) NOT NULL, --考评月份
yg_ID int NOT NULL, --员工编号
ztEva varchar(200), --总体评价
jlReason varchar(200), --奖励事由
jlAmount smallint, --奖励金额
cfReason varchar(200), --处罚事由
cfAmount smallint, --处罚金额
Memo varchar(200) --备注信息
)
GO
/***************************创建用户表*************************************/
CREATE TABLE Admin
(
UserName varchar(40) PRIMARY KEY, --用户姓名
Pwd varchar(40) NOT NULL, --用户密码
UserType tinyint NOT NULL --用户权限
)
GO
INSERT INTO Admin Values('e', 'e', 1)
GO
/***************************创建视图*************************************/
CREATE VIEW dbo.v_KaoqinSum
AS
SELECT LEFT(dbo.Kaoqin.CheckDate, 7) AS CheckMonth, dbo.Yuangong.yg_Name,
SUM(dbo.Kaoqin.qqDays) AS Sumqq, SUM(dbo.Kaoqin.ccDays) AS SumCc,
SUM(dbo.Kaoqin.bjDays) AS SumBj, SUM(dbo.Kaoqin.sjDays) AS SumSj,
SUM(dbo.Kaoqin.kgDays) AS SumKg, SUM(dbo.Kaoqin.fdxjDays) AS SumFdxj,
SUM(dbo.Kaoqin.nxjDays) AS SumNxj, SUM(dbo.Kaoqin.dxjDays) AS SumDxj,
SUM(dbo.Kaoqin.cdMinutes) AS SumCd, SUM(dbo.Kaoqin.ztMinutes) AS SumZt,
SUM(dbo.Kaoqin.ot1Days) AS SumOt1, SUM(dbo.Kaoqin.ot2Days) AS SumOt2,
SUM(dbo.Kaoqin.ot3Days) AS SumOt3, dbo.Yuangong.BumenID
FROM dbo.Kaoqin INNER JOIN
dbo.Yuangong ON dbo.Kaoqin.Yg_ID = dbo.Yuangong.Yg_ID
GROUP BY LEFT(dbo.Kaoqin.CheckDate, 7), dbo.Yuangong.yg_Name,
dbo.Kaoqin.Yg_ID, dbo.Yuangong.BumenID
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -