建材秒知道
登录
建材号 > 设计 > 正文

如何快速制作员工考勤报表

威武的小蘑菇
任性的小蝴蝶
2023-01-26 13:26:42

如何快速制作员工考勤报表?

最佳答案
俭朴的乌龟
壮观的诺言
2025-09-11 10:20:10

  方法/步骤

  1.首先打开EXCEL2013,然后选择,在出现的模板选择中找到并点击:员工考勤时间表——点击:创建。

  2.输入员工姓名:点击员工姓名表格——把员工姓名列的姓名修改成本单位的员工姓名。

  3.设置员工出勤类型:如点击1月表格,在出勤类型键那一列设置好休假、个人事假、病假,还可自定义两个出勤类型键。在最后那列输入年份。

考勤

  4.设置好1月的样式后,复制出勤类型键那一列,然后粘贴到2月到12月的表格里,并在每个月的表格设置好年份。然后按照出勤类型键去输入每个员工每天出勤情况。

在每个月份的表只设计5个员工,修改方法:点击1月份表格,点击选择:员工1单元格——点击数据——数据验证——在来源哪里设置数据范围——在员工1单元格下方插入多个单元格,直到够数为止——往下拖拉填充就可以了。其它表格也是一样。最后保存就可以了。

最新回答
小巧的小懒虫
自觉的大门
2025-09-11 10:20:10

1.新建一个word文档,命名为“考勤表”,然后双击打开。在工具栏选择“纸张方向”--“横向”,将页面调整为横向。

2.点击“插入”--“插入表格”,根据实际人数和需要,设置行数和列数。单。

3.横行为天数,竖列为人员。可根据实际要求适量增减表格,最后一列为出勤天数统计。

忧心的红酒
懵懂的花瓣
2025-09-11 10:20:10

个人员工计件工资是以个人为计算单位的,工资取决于个人的劳动成果,是按照个人生产的合格产品的数量乘以计件单价,计算出应得的计件工资。个人计件工资适合单独操作个人劳动定额的工人。

对于能够分清个人经济责任,便于考核个人生产成果的可以实行个人计件工资制。对于集体生产或连续操作,不能直接考核个人生产成果的,可以实行集体计件制。自动生成计件工资表 。

孝顺的云朵
心灵美的水蜜桃
2025-09-11 10:20:10
第一个问题:select a.姓名,a.薪水,b.薪水级别,count(b.Salclass) from (select * from 员工表 where empid=1) a left join 薪水级别表 b on a.EmpSal = b.MaxSal

楼主可以试一下。我提供点思路。平均工资我没想明白。一个人的平均工资怎么求。。。

第二题就是一个设计模式只要满足它的要求就行比如:

public class Singleton {

private Singleton(){}

//在自己内部定义自己一个实例,是不是很奇怪?

//注意这是private 只供内部调用

private static Singleton instance = new Singleton()

//这里提供了一个供外部访问本class的静态方法,可以直接访问

public static Singleton getInstance() {

return instance

}

}

英勇的裙子
聪慧的手机
2025-09-11 10:20:10
员工表:员工信息(员工ID、姓名、性别等),关联角色(角色ID)

角色表:角色分类(角色ID、角色名)

请假申请表:请假流水号、员工ID、申请日期、假期开始日期、假期天数、当前状态(申请-》一审-》2审-》批准/未批准)

请假流程表:请假流水号、审批人,审批日期,审批结果

如果功能在强点的话,可以加上审批限制日期,超限制没进行审批,自动标为为批准、自己可以在进行扩展

踏实的月饼
故意的路人
2025-09-11 10:20:10
两个都是主键,再加上上班时间和下班时间即可实现一天两次考勤的记录,方便查询旷工信息。

也可以设计成只有一个打卡时间,每次打卡追加一条,这样一天打多次卡,也能每条都可以查到。

明亮的纸鹤
酷酷的御姐
2025-09-11 10:20:10

工作任务分工表是各项工作任务由哪个工作部分或者个人负责,有哪些工作部门参与配合,每一个任务应该有一个负责办理人。管理职能分工表是用表的形式反映项目管理班子内部项目经理、各工作部门和个工作岗位对各项工作任务的职能分工。两者属于协同关系,前者确定工作任务由谁来做,后者确定管理执行工作的人的任务。

扩展资料:

注意事项:

1、内容的设计都要根据工作说明书来确定,考虑本企业的招聘目标以及欲招聘的岗位,按不同岗位要求、不同应聘人员的层次分别进行设计。每一栏目均有一定的目的,切忌烦琐重复。

2、设计时还要注意有关法律和政策。不要将涉及国家机密的内容列入应聘申请表的调查项目。

3、设计申请表时还要考虑申请表的存储、检索等问题,尤其是在计算机管理系统中。

4、审查已有的申请表。即使已经有一个现成的表格,也不要简单地就使用。要进行适当的审查,确保这份申请表可以提供为填补岗位空缺而需要从申请人那里了解的情况。

朴素的小蝴蝶
受伤的黑夜
2025-09-11 10:20:10
软件工程师考评表 时间: 年 月 日被考评人: 考评人: 1 、重要任务 / 满分: 90 分 及格分: 45 分 (1)工作量(50%): A( ) B( ) C( ) D( ) E( ) (2)技术难度(10%): A( ) B( ) C( ) D( ) E( ) (3)新技术使用情况(10%):A( ) B( ) C( ) D( ) E( ) (4)管理责任(10%): A( ) B( ) C( ) D( ) E( ) (5)技术责任(10%): A( ) B( ) C( ) D( ) E( ) (6)其他临时工作(10%): A( ) B( ) C( ) D( ) E( ) 分数: 2 、岗位工作 / 满分: 45 分 及格分: 22.5 分 1、编码水平 A( ) B( ) C( ) D( ) E( ) 2、文档编写水平 A( ) B( ) C( ) D( ) E( ) 3、建议及接受建议 A( ) B( ) C( ) D( ) E( ) 4、工作总结及开发计划 A( ) B( ) C( ) D( ) E( ) 5、备份源程序 A( ) B( ) C( ) D( ) E( ) 6、技术保密 A( ) B( ) C( ) D( ) E( ) 分数: 3 、工作态度 / 满分: 45 分 及格分: 22.5 分 互评分数: 考评人评语: 合计总分: 考评人签字: 绩效考核面谈表部门职位姓名考核日期 年 月 日 工作成功的方面工作中需要改善的地方是否需要接受一定的培训本人认为自己的工作在本部门和全公司中处于什么状况本人认为本部门工作最好、最差的是谁?全公司呢?对考核有什么意见希望从公司得到怎样的帮助下一步的工作和绩效的改进方向面谈人签名日期备注说明: 1.绩效考核面谈表的目的是了解员工对绩效考核的反馈信息,并最终提高员工的业绩; 2.绩效考核面谈应在考核结束后一周内由上级主管安排,并报行政人事部备案。 补充: 主管人员服务成绩考核表 编号________ 职称:_____________ 姓名:____________ ________年度______月 考核项目 评 分 标 准 学识 经验 经验丰富,能触类旁通,且常提供改进意见。 20 学识经验较一般人为良好。 16 肯上进,接受指导,尚能应付工作。 12 不求上进,尚需继续加以训练。 8 对工作要求茫然无知,工作疏忽。 4 管理 善知人派事,善于分析认识问题,检讨工作成果。 30 知人派事能认识问题,并透过他人完成工作。 24 尚能知人派事了解问题,不失职份。 18 未有善于用人,不分析问题及检讨工作成果。 12 对于管理全然不关心。 6 责任感 任劳任怨,竭尽所能完成任务。 20 工作努力,份内工作非常完善。 16 有责任心能自动自发。 12 交付工作常需督导始能完成。 8 敷衍无责任感,粗心大意。 4 指导 能力 完整正确的指挥计划工作,激发工作热情。 10 命令顺利下达能发生良好效果。 8 尚能领导他人工作,达到一般效果。 6 领导能力较差工作时不能达到预定效果。 4 完全没有领导能力,不能使人信服。 2 业务 行力 理解力非常强对事判断极正确,处理力强。 20 理解力良好,对事判断正确,处理力较强。 16 理解判断力普通处理事务不常有错误。 12 理解较迟,对复杂事件判断力不够。 8 理解迟钝、判断力不良,经常无法处理事务。 4 奖惩 记录考核评分奖惩增减分考绩评语:___________________________________________________________________________ 考核者:_________________ 评分标准: 90分优秀 80~90分良好 70~80分中等 60~70分及格 60分以下不及格 专业人员服务成绩考核表 _________年度______月部门 职位 姓名 考核项目 评 分 标 准 学识 经验 学识经验能触类旁通,且常提供改进意见。 20 学识经验较一般人为良好。 16 肯上进,接受指导,能应付工作。 12 不求上进,尚需继续加以训练。 8 对工作要求茫然无知,工作疏忽。 4 专业 能力 极丰富之专门技能,充分能完成本身职务。 30 理解力强,对事判断正确,处理力比一般人强。 24 理解力普通,处理事件不常有错误。 18 理解较迟,对复杂事件判断力不够。 12 理解迟钝,判断能力不良,经常无法处理事件。 6协调性 与人协调间为工作顺利完成尽大努力 20 爱护团体常协助别人。 16 肯应别人要求帮助他人。 12 仅在必要与人协调之工作上与人合作。 8 精神散漫不肯与人合作。 4责任感 任劳任怨,竭尽所能成任务。 10 工作努力,份内蒙作非常完善。 8 有责任心能自动自发。 6 交付工作常需督导始能完成。 4 敷衍无责任感粗心大意。 2 积极性 奉公守法足为他人楷模。 20 热心工作,支持公司方面之政策。 16 对本身工作感兴趣,不于工作时间开玩笑。 12 工作无恒心精神不振不满现实。 8 态度傲慢常唆使别人向厂方作不合理要求。 4 奖惩 记录考核评分 奖惩增减分 考绩评语:_______________ 考核者:_________________ 评分标准: 90分优秀 80~90分良好 70~80分中等到 60~70分及格 60分以下不及格 这几个表格应该够用了,自己按照实际情况修修改。 追问: 这个不适合我们公司,我们想要一个真实的反馈表格,就是让员工能从这张表格中反应为好现象还是不好~ 回答: 员工绩效考核表 被考核人姓名: 部门: 职位: 评价目标 评价标准 初核得分 复核得分 基本情况25分 出勤 1、出勤(10分):旷职扣5分/次,事假扣2分/次,早退或迟到扣1分/次.奖惩 2、奖惩(10分):失误扣5分/次,嘉奖加5分/次。失误 次,嘉奖 次。合群性 对集体漠不关心,不愿并且很少参加公司的群体活动 对集体不太关心,不主动参与公司的集体活动,劝说有时能参加 能参加公司所有的集体活动 关心集体,主动的参与公司的集体活动 关心集体,积极的倡导并组织公司的集体活动 初核得分 复核得分 分值5 1 2 3 4 5 工作态度25分 责任心 敷衍无责任心,做事粗心大意 交付工作需常督促,始能完成 有责任心,能自动自发 工作努力,份内工作非常完善 任劳任怨,竭尽所能完成任务 初核得分 复核得分 分值5 0 1 2~3 4 5积极性 无论怎样督促也不上进,工作挑挑拣拣,避难就易 遇问题和困难就垂头丧气,不出成果 不知疲倦,不断进取 求知欲强,并把知识用于实践,弥补自己工作中的短外,永不满足,努力提高自己素质 勇于挑战,不畏困难;为实现目标竭尽全力 初核得分 复核得分 分值5 1 2 3 4 5原则性 原则性差,是非不分,常常拿原则做交易 原则性较差,有时为了情面放弃原则 一般情况下,能坚持原则,但不能硬碰 原则性较强,是非分明,能开展批评与自我批评 原则性强,敢于硬碰,能同违法乱纪的现象作不懈的斗争 初核得分 复核得分 分值5 0 1 2~3 4 5协调性 不推不动,但求自己方便合适 只考虑本职工作,对其他事情不闻不问 理解领导意图,主动为领导分担责任,乐于助人 充分理解群体目标,乐意为群体目标的实现做贡献 不惜牺牲自我,通力合作 初核得分 复核得分 分值5 1 2 3 4 5纪律性 组织纪律性差,有违法乱纪行为 组织纪律性较差,规章制度执行不严,偶有违纪现象 有一定组织纪律性,能遵守党纪国法和各项规章制度 组织纪律性较强,自觉遵守党纪国法和各项规章制度 组织纪律性强,带头遵守党纪国法和各项规章制度,并督促他人遵守 初核得分 复核得分 分值5 0 1 2~3 4 5 工作能力35分 学习能力 学习进度慢,记忆力差 每一次学习均需要督导 需要少量督导,能了解一些新产品,新知识 学习进度较快,能了解接触到的新知识,新产品 知道如何学习,并能积极主动的学习新知识,了解新产品 初核得分 复核得分 分值5 0 1 2~3 4 5专业知识 缺乏本职专业理论知识 对本职专业理论知识只粗浅了解 一般性掌握本职专业知识 掌握本职专业理论知识,具有一定深度 系统全面掌握本职专业理论知识,对某些问题有独立见解,是本专业的行家 初核得分 复核得分 分值5 1 2 3 4 5本职业务能力 本职业务能力差,难以胜任本职工作 本职业务能力较差,在具体指导下能符合工作要求 本职业务能力一般,能独立胜任本职工作 本职业务能力强,能独立处理较复杂的业务工作,是业务骨干 本职业务能力强,能妥善解决本部门关键复杂的业务问题,事业上的带头人或尖子 初核得分 复核得分 分值5 1 2 3 4 5创新能力 不能创新,处事草率,不愿打破现状 尚能规划,少创新,多半墨守陈规 有创新,能改进自已的工作。 富有创新,多智谋,态度积极。能自动研究创新。 处事善于规划,能积极提出独特见解。 初核得分 复核得分 分值5 0 1 2~3 4 5判断能力 理解迟钝、判断力不良,只依上级指示执行 理解较迟,对复杂事件判断力不够 理解判断力普通,处理事务不常有错误 理解力良好,对事判断正确,处理力强 有高度敏锐的分析能力,理解力非常强,对事判断极正确,处理力极强 初核得分 复核得分 分值5 1 2 3 4 5沟通能力 谈话说服力差,态度生硬,缺乏谈话技巧,难以被人接受 谈话说服力较差,不善于疏导,有时不易被别人接受 谈话说服力一般,有一定疏导技巧,尚能被别人接受 谈话说服力较强,态度诚恳,善于疏导,说服效果较好 谈话说服力强,谈吐亲切和蔼,语言诙谐幽默,富有魅力,能自然、有技巧地说服别人 初核得分 复核得分 分值5 1 2 3 4 5书面表达能力 书面表达能力差,文章结构零乱不规范,语病和错别字多 书面表达能力较差,文章不够通顺,有语病 有一定书面表达能力,文字通顺,表达清楚,较少语病 书面表达能力好,文章结构合理,文字简洁 书面表达能力很好,结构严谨,文字流畅、简练、生动,文章质量高 初核得分 复核得分 分值5 1 2 3 4 5 工作成绩45分 任务完成情况 没完成规定任务 基本上完成规定任务 规定任力完成较好 比规定任务完成得多 比规定任务完成的既好又多 初核得分 复核得分 分值15 1~2 3~5 6~9 10~12 13~15工作质量 工作质量低劣,经常出现差错 一般能完成工作任务,质量处于平均水平 能完成作者国,工作质量比较好 按期完成任务,工作质量较高,无重大失误差错 提前完成任务,工作质量突出,无差错 初核得分 复核得分 分值15 1~2 3~5 6~9 10~12 13~15工作效率 工作效率低,经常完不成任务 工作效率较低,需要别人帮助才能完成任务 工作效率一般,能按时完成任务,基本保证质理 工作效率较高,能及时保质保量完成任务 工作效率高,完成任务速度快,质量高,效益好 初核得分 复核得分 分值15 1~2 3~5 6~9 10~12 13~15 初核 总分数 基本情况 工作态度 工作能力 工作成绩 复核 总分数 基本情况 工作态度 工作能力 工作成绩 绩效考核格式应该差不多,具体内容还是要结合自己公司的实际情况,自己修改一下。

开心的衬衫
怕黑的大碗
2025-09-11 10:20:10
员工基本信息表(包括姓名、年月等基本信息)

公司职务表(公司所设职务名称、说明、职务类别等)

岗位表(岗位名称、说明、所属部门等)

部门列表(部门名称、类别、上级部门id)

部门员工清单(部门id、员工信息表id、岗位id等)

其实这些表可以归纳为一个表:

员工信息表(包括姓名、日期、职务名称、说明、职务类别、岗位名称、部门名称、类别、上级部门id等基本信息)

哈哈!条件查询修改就不的了????

糊涂的彩虹
潇洒的老虎
2025-09-11 10:20:10
一、数据场景 1、表结构简介 任何工具类的东西都是为了解决某个场景下的问题,比如Redis缓存系统热点数据,ClickHouse解决海量数据的实时分析,MySQL关系型数据库存储结构化数据。数据的存储则需要设计对应的表结构,清楚的表结构,有助于快速开发业务,和理解系统。表结构的设计通常从下面几个方面考虑:业务场景、设计规范、表结构、字段属性、数据管理。

2、用户场景

例如存储用户基础信息数据,通常都会下面几个相关表结构:用户信息表、单点登录表、状态管理表、支付账户表等。

用户信息表

存储用户三要素相关信息:姓名,手机号,身份证,登录密码,邮箱等。

CREATE TABLE `ms_user_center` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',`user_name` varchar(20) NOT NULL COMMENT '用户名',`real_name` varchar(20) DEFAULT NULL COMMENT '真实姓名',`pass_word` varchar(32) NOT NULL COMMENT '密码',`phone` varchar(20) NOT NULL COMMENT '手机号',`email` varchar(32) DEFAULT NULL COMMENT '邮箱',`head_url` varchar(100) DEFAULT NULL COMMENT '用户头像URL',`card_id` varchar(32) DEFAULT NULL COMMENT '身份证号',`user_sex` int(1) DEFAULT '1' COMMENT '用户性别:0-女,1-男',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`state` int(1) DEFAULT '1' COMMENT '是否可用,0-不可用,1-可用',PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表' 单点登录表

用意是在多个业务系统中,用户登录一次就可以访问所有相互信任的业务子系统,是聚合业务平台常用的解决方案。

CREATE TABLE `ms_user_sso` (`user_id` int(11) NOT NULL COMMENT '用户ID',`sso_id` varchar(32) NOT NULL COMMENT '单点信息编号ID',`sso_code` varchar(32) NOT NULL COMMENT '单点登录码,唯一核心标识',`log_ip` varchar(32) DEFAULT NULL COMMENT '登录IP地址',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`state` int(1) DEFAULT '1' COMMENT '是否可用,0-不可用,1-可用',PRIMARY KEY (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户单点登录表' 状态管理表

系统用户在使用时候可能出现多个状态,例如账户冻结、密码锁定等,把状态聚合到一起,可以更加方便的管理和验证。

CREATE TABLE `ms_user_status` (`user_id` int(11) NOT NULL COMMENT '用户ID',`account_status` int(1) DEFAULT '1' COMMENT '账户状态:0-冻结,1-未冻结',`real_name_status` int(1) DEFAULT '0' COMMENT '实名认证状态:0-未实名,1-已实名',`pay_pass_status` int(1) DEFAULT '0' COMMENT '支付密码是否设置:0-未设置,1-设置',`wallet_pass_status` int(1) DEFAULT '0' COMMENT '钱包密码是否设置:0-未设置,1-设置',`wallet_status` int(1) DEFAULT '1' COMMENT '钱包是否冻结:0-冻结,1-未冻结',`email_status` int(1) DEFAULT '0' COMMENT '邮箱状态:0-未激活,1-激活',`message_status` int(1) DEFAULT '1' COMMENT '短信提醒开启:0-未开启,1-开启',`letter_status` int(1) DEFAULT '1' COMMENT '站内信提醒开启:0-未开启,1-开启',`emailmsg_status` int(1) DEFAULT '0' COMMENT '邮件提醒开启:0-未开启,1-开启',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`state` int(1) DEFAULT '1' COMMENT '是否可用,0-不可用,1-可用',PRIMARY KEY (`user_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户状态表' 支付账户表

用户交易的核心表,存储用户相关的账户资金信息。

CREATE TABLE `ms_user_wallet` (`wallet_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '钱包ID',`user_id` int(11) NOT NULL COMMENT '用户ID',`wallet_pwd` varchar(32) DEFAULT NULL COMMENT '钱包密码',`total_account` decimal(20,2) DEFAULT '0.00' COMMENT '账户总额',`usable_money` decimal(20,2) DEFAULT '0.00' COMMENT '可用余额',`freeze_money` decimal(20,2) DEFAULT '0.00' COMMENT '冻结金额',`freeze_time` datetime DEFAULT NULL COMMENT '冻结时间',`thaw_time` datetime DEFAULT NULL COMMENT '解冻时间',`create_time` datetime DEFAULT NULL COMMENT '创建时间',`update_time` datetime DEFAULT NULL COMMENT '更新时间',`state` int(1) DEFAULT '1' COMMENT '是否可用,0-不可用,1-可用',PRIMARY KEY (`wallet_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户钱包' 二、设计规范 1、涉及模块

通过上面几个表设计的案例,可以看到表设计关联到数据库的各个方面知识:数据类型,索引,编码,存储引擎等。表设计是一个很大的命题,不过也遵循一个基本规范:三范式。

2、三范式 基础概念

一范式

表的列的具有原子性,不可再分解,即列的信息,不能分解,关系型数据库MySQL、Oracle等自动的满足。

二范式

每个事实的数据记录只会出现一次, 不会冗余, 通常设计一个主键来实现。

三范式

要求一个表中不包含已经存在于其它表的非主键信息,例如部门和员工的信息,员工表包含部门表的主键ID,则可以关联获取相关信息,没必要在员工表保存相关信息。

优缺点对比

范式化设计

范式化结构设计通常更新快,因为冗余数据较少,表结构轻巧,也更好的写入内存中。但是查询起来涉及到关联,代价非常高,非常损耗查询性能。

反范式化设计

所有的数据都在一张表中,避免关联查询,索引的有效性更高,但是数据的冗余性极高。

建议结论

上述的两种设计方式在实际开发中都是不存在的,在实际开发中都是混合使用。比如汇总统计,缓存数据,都会基于反范式化的设计。

三、字段属性

合适的字段类型对于高性能来说非常重要,基本原则如下:简单的类型占用资源更少;在可以正确存储数据的情况下,选最小的数据类型。

1、数据类型选择 整数类型

TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,根据数据类型范围合理选择即可。

实数类型

FLOAT、DOUBLE、DECIMAL,建议资金货币相关类型使用高精度DECIMAL存储,或者把数据成倍扩大为整数,采用BIGINT存储,不过处理相对麻烦。

字符类型

CHAR、VARCHAR,长度不确定建议采用VARCHAR存储,不过VARCHAR类型需要额外开销记录字符串长度。CHAR适合存储短字符,或者定长字符串,例如MD5的加密结构。

时间类型

DATETIME、TIMESTAMP,DATETIME保存大范围的值,精度秒。TIMESTAMP以时间戳的格式,范围相对较小,效率也相对较高,所以通常情况建议使用。

MySQL的字段类型有很多种,可以根据数据特性选择合适的,这里只描述常见的几种类型。

2、基础用法操作 数据类型

修改字段类型

ALTER TABLE ms_user_sso MODIFY state CHAr(1) DEFAULT '0'ALTER TABLE ms_user_sso MODIFY state INT(1) DEFAULT '1' COMMENT '状态:0不可用,1可用'

修改名称位置

ALTER TABLE ms_user_sso CHANGE log_ip login_ip VARCHAr(32) AFTER update_time 索引使用

索引类型:主键索引,普通索引,唯一索引,组合索引,全文索引。这里演示普通索引的操作。MySQL的核心模块,后续详说。

添加索引

ALTER TABLE ms_user_wallet ADD INDEX user_id_index(user_id) CREATE INDEX state_index ON ms_user_wallet(state)

查看索引

SHOW INDEX FROM ms_user_wallet

删除索引

DROp INDEX state_index ON ms_user_wallet

修改索引

不具有真正意义上的修改,可以把原有的索引删除之后,再次添加索引。

外键关联

用处:外键关联的作用保证多个数据表的数据一致性和完整性,建表时先有主表,后有从表;删除数据表,需要先删从表,再删主表。复杂场景不建议使用,实际开发中用的也不多。

添加外键

ALTER TABLE ms_user_wallet ADD CONSTRAINT user_id_out_key FOREIGN KEY(user_id) REFERENCES ms_user_center(id)

删除外键

ALTER TABLE ms_user_wallet DROP FOREIGN KEY user_id_out_key四、表结构管理 1、查看结构DESC ms_user_status SHOW CREATE TABLE ms_user_status2、字段结构 添加字段 ALTER TABLE ms_user_status ADD `delete_time` datetime DEFAULT NULL COMMENT '删除时间' 删除字段 ALTER TABLE ms_user_status DROP COLUMN delete_time3、修改表名ALTER TABLE ms_user_center RENAME ms_user_info4、存储引擎 存储引擎 SELECT VERSION() SHOW ENGINES

MySQL 5.6 支持的存储引擎有InnoDB、MyISAM、Memory、Archive、CSV、BLACKHOLE等。一般默认使用InnoDB,支持事务管理。该模块MySQL核心,后续详解。

修改引擎

数据量大的场景下,存储引擎修改是一个难度极大的操作,容易会导致表的特性变动,引起各种后续反应,后续会详说。

ALTER TABLE ms_user_sso ENGINE = MyISAM5、修改编码

表字符集默认使用utf8,通用,无乱码风险,汉字3字节,英文1字节,utf8mb4是utf8的超集,有存储4字节例如表情符号时使用。

查看编码 SHOW VARIABLES LIKE 'character%' 修改编码 ALTER TABLE ms_user_sso DEFAULT CHARACTER SET utf8mb4五、数据管理 1、增删改查

添加数据

INSERT INTO ms_user_sso ( user_id,sso_id,sso_code,create_time,update_time,login_ip,state ) VALUES ('1','SSO7637267','SSO78631273612','2019-12-24 11:56:57','2019-12-24 11:57:01','127.0.0.1','1' )

更新数据

UPDATE ms_user_sso SETuser_id = '1',sso_id = 'SSO20191224',sso_code = 'SSO20191224', create_time = '2019-11-24 11:56:57',update_time = '2019-11-24 11:57:01', login_ip = '127.0.0.1',state = '1' WHERe user_id = '1'

查询数据

一般情况下都是禁止使用 select* 操作。

SELECT user_id,sso_id,sso_code,create_time,update_time,login_ip,state FROM ms_user_sso WHERe user_id = '1'

删除数据

DELETe FROM ms_user_sso WHERe user_id = '2'

不带where条件,就是删除全部数据。原则上不允许该操作,优化篇会详解。TRUNCATE TABLE也是清空表数据,但是占用的资源相对较少。

2、数据安全 不可逆加密

这类加密算法,多用来做数据验证操作,比如常见的密码验证。

SELECT MD5('cicada')='94454b1241ad2cfbd0c44efda1b6b6ba' SELECT SHA('cicada')='0501746a2e4fd34e1d14015fc4d58309585edc7d' SELECT PASSWORd('smile')='*B4FB95D86DCFC3F33A3852714DC742C77504479D' 可逆加密

安全性要求高的系统,需要做三级等保,对数据的安全性极高,数据在存储时必须加密入库,取出时候需要解密,这些就需要可逆加密。

SELECT DECODE(ENCODE('123456','key_salt'),'key_salt') SELECT AES_DECRYPT(AES_ENCRYPT('cicada','salt123'),'salt123')

上述数据安全的管理,也可以基于应用系统的服务(代码)层进行处理,相对专业的流程是从数据生成源头处理,规避数据传递过程泄露,造成不必要的风险。