SET names utf8;
|
|
SET FOREIGN_KEY_CHECKS=0;
|
|
|
|
DROP DATABASE IF EXISTS attendance;
|
|
CREATE DATABASE attendance CHARSET utf8;
|
|
USE attendance;
|
|
|
|
-- ----------------------------
|
|
-- Table structure for staff_info
|
|
-- ----------------------------
|
|
DROP TABLE IF EXISTS `staff_info`;
|
|
CREATE TABLE `staff_info` (
|
|
`jobnum` int(255) NOT NULL COMMENT '学号',
|
|
`name` varchar(255) default NULL COMMENT '姓名',
|
|
`dept` varchar(255) default NULL COMMENT '院系',
|
|
`depthead` varchar(255) default NULL COMMENT '班级'
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
-- ----------------------------
|
|
-- Table structure for attend_record
|
|
-- ----------------------------
|
|
DROP TABLE IF EXISTS `attend_record`;
|
|
CREATE TABLE `attend_record` (
|
|
`jobnum` int(255) NOT NULL COMMENT '学号',
|
|
`number` int(255) NOT NULL COMMENT '考勤序号',
|
|
`state` varchar(255) default NULL COMMENT '签到为通过否则为不通过'
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
-- ----------------------------
|
|
-- Table structure for attend_score
|
|
-- ----------------------------
|
|
DROP TABLE IF EXISTS `attend_score`;
|
|
CREATE TABLE `attend_score` (
|
|
`jobnum` int(255) NOT NULL COMMENT '学号',
|
|
`sum_fail` int(255) NOT NULL COMMENT '累计签到次数',
|
|
`score` int(255) NOT NULL COMMENT '考勤成绩'
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
-- ----------------------------
|
|
-- Table structure for var
|
|
-- ----------------------------
|
|
DROP TABLE IF EXISTS `var`;
|
|
CREATE TABLE `var` (
|
|
`sum_all` int(255) NOT NULL COMMENT '考勤次数'
|
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
|
|
|
|
INSERT INTO `var` (`sum_all`) VALUES (0);
|
|
|
|
-- ----------------------------
|
|
-- Records of staff_info
|
|
-- ----------------------------
|
|
INSERT INTO `staff_info` (`jobnum`, `name`, `dept`, `depthead`) VALUES
|
|
(438, '陈越', '数据学院', '1'),
|
|
(1, '学生1', '学院1', '1'),
|
|
(2, '学生2', '学院2', '2'),
|
|
(3, '学生3', '学院3', '3');
|
|
|
|
-- ----------------------------
|
|
-- Records of attend_score
|
|
-- ----------------------------
|
|
INSERT INTO `attend_score` (`jobnum`) VALUES
|
|
(438),
|
|
(1),
|
|
(2),
|
|
(3);
|
|
|
|
-- ---------------------------------
|
|
-- Indexes for table `staff_info`
|
|
-- ---------------------------------
|
|
ALTER TABLE `staff_info`ADD PRIMARY KEY (`jobnum`);
|
|
|
|
-- ---------------------------------
|
|
-- Indexes for table `attend_score`
|
|
-- ---------------------------------
|
|
ALTER TABLE `attend_score`ADD PRIMARY KEY (`jobnum`);
|
|
|
|
-- ----------------------------
|
|
-- 在表attend_record上创建触发器change_score
|
|
-- 签到通过,score+1,
|
|
-- 累计考勤不通过数
|
|
-- ----------------------------
|
|
DELIMITER $$
|
|
DROP TRIGGER IF EXISTS change_score$$
|
|
CREATE TRIGGER change_score AFTER INSERT
|
|
ON attend_record FOR EACH ROW
|
|
BEGIN
|
|
-- 考勤通过者,score+1
|
|
update attend_score
|
|
set score=score+'1'
|
|
where jobnum=NEW.jobnum and NEW.state = '通过';
|
|
-- 累计考勤不通过数
|
|
update attend_score
|
|
set sum_fail=sum_fail+'1'
|
|
where jobnum=NEW.jobnum and NEW.state = '不通过';
|
|
END
|
|
$$
|
|
DELIMITER ;
|