CREATE TABLE punch_card ( id INT PRIMARY KEY AUTO_INCREMENT, username VARCHAR(30) NOT NULL, punch_time DATETIME NOT NULL, punch_type ENUM('上班', '下班') NOT NULL );
以上代码创建了一个名为punch_card的表,包括4个字段:id、username、punch_time和punch_type。其中,id为主键,自动递增;username为用户名,不可为空;punch_time为打卡时间,也不可为空;punch_type记录上班或下班打卡。
接下来,大家可以使用INSERT语句插入打卡记录。
INSERT INTO punch_card (username, punch_time, punch_type) VALUES ('张三', '2021-01-01 08:00:00', '上班'), ('张三', '2021-01-01 17:00:00', '下班'), ('李四', '2021-01-01 09:00:00', '上班'), ('李四', '2021-01-01 18:00:00', '下班');
以上代码向punch_card表中插入4条记录,分别表示张三在1月1日上午8点上班打卡,下午5点下班打卡,李四也是同样的时间打卡。
要想查询某个用户的打卡记录,可以使用SELECT语句。
SELECT * FROM punch_card WHERE username='张三';
以上代码会返回所有张三的打卡记录。
最后,大家可以使用UPDATE语句更新打卡记录。
UPDATE punch_card SET punch_time='2021-01-01 09:00:00' WHERE id=1;
以上代码将id为1的打卡记录的打卡时间从8点更新为9点。