员工绩效管理系统的制度管理模块的设计与实现.docx
摘要此在社会高速发展与信息技术不断迭代的良性循环下,信息量的激增也必然存在着利与弊;当信息量达到一定程度的时候,如果不能利用好这些数据,会给工作效率带来极大的麻烦,但如果能够好好利用这数据,可以从数据中提取有用的信息,并针对性去解决问题或者提升效率,员工绩效考核系统可高效地管理员工绩效及信息。广东东软学院暂时没有一个较为合适的员工绩效考核系统,出自于这个真实的需求项目组决定来设计一款适用于广东东软学院的员工绩效考核系统,能够提供员工自行登记绩效,并实现按照年或月为单位对全体教职工绩效进行汇总统计,来提供学院对教职工的绩效及信息更加高效地利用及管理。主要针对教职工每年的绩效考核登记与汇总,根据每月或每年汇总结果可看出,哪些比较低,针对性进行通知预警。系统基于B_S模型的web应用开发,采用express+react开发框架,使用JavaScript语言,mysql数据库,完成了一个完整的绩效考核系统,实现了事项登记与统计汇总。关键词:JavaScript,Node.js,Express,React,Mysql,Web开发Abstract With the rapid development of society and the continuous iteration of information technology, there are advantages and disadvantages in the rapid growth of information. When the amount of information reaches a certain level, if we can't make good use of these data, it will bring great trouble to work efficiency. But if we can make good use of these data, we can extract useful information from the data and solve the problem pertinently Or improve efficiency, employee performance appraisal system can effectively manage employee performance and information.Guangdong Neusoft university does not have a more suitable employee performance appraisal system for the time being. The project team decided to design an employee performance appraisal system suitable for Guangdong Neusoft university based on this real demand, which can provide employees with self registration performance, and realize the summary and statistics of the performance of all staff according to the year or month, so as to provide the performance of the faculty And more efficient use and management of information. It is mainly aimed at the registration and summary of the annual performance appraisal of the teaching staff. According to the monthly or annual summary results, it can be seen which are relatively low, and the targeted notice and early warning should be given. The system is based on the web application development of B s model, using express + react development framework, using JavaScript language, MySQL database, completed a complete performance appraisal system, and achieved event registration and statistical summary.Key words: JavaScript,Nodejs,Express,React,Mysql,WebDevelopment广东东软学院本科生毕业设计(论文)目录第一章 绪论11.1开发背景11.1.1 系统市场现况11.1.2系统意义及目的11.1.3项目内容与成果2第二章 开发语言与框架简介32.2 系统开发工具简介32.2.1 硬件环境32.2.2 开发语言32.2.3开发框架5第三章 系统分析与设计83.1 需求分析83.1.1 功能需求83.2 系统设计153.2.1 总计设计153.2.2 数据库设计17第四章 系统功能实现224.1 业务流程224.2 核心代码实现27(1)数据库表代码:27(2)触发器代码32(4)制度管理页面33(4)制度细则页面35第五章 总结与展望375.1总结375.2展望37参考文献38致谢39第一章 绪论1.1 开发背景 1.1.1 系统市场现况随着互联网技术与社会的不断发展与进步,信息量有了爆炸性的增长,如何管理好数据,并且对数据价值进一步提取是大数据时代的一个趋势。技术在不断的更新迭代,但是依然存在部分方面并没有很好的利用技术更新迭代带来的好处,例如管理模式的运用,传统的管理模式,已慢慢不适用在这个信息爆炸的时代了,由于科学技术发展过于快速,相应的管理模式没有得到升级,导致的效率差,进一步的降低了工作的效率。因此科技在不断的发展,相应的管理模式也应该得到升级,市场上的员工绩效考核其实已经非常的普遍了,企业达到一定的体量不引进一些更为先进的管理系统跟技术,不仅会增加巨大的工作量,且会造成巨大的成本。使用新的管理系统不仅可以增加企业的工作效率,更可以成为企业的一个门面,证明企业的各个方面都随着科技发展,全方面的提升,更能在企业竞争在展现出优势。1.1.2 系统意义及目的根据广东东软学院2017年3月学校最新信息显示,学院校园占地约为630余亩,校舍总建筑面积约24万平方米,图书馆藏纸质图书约70万册,电子图书约为31万册;开设有多个系部,如计算机科学与技术系、信息管理与工程系、商务管理系、数字艺术系、国际教育学院、国际合作部,各个系部总共开设有16个本科专业及17个专科专业;拥有教职工500余名,全日制在校生约为9000余人。广东东软学院作为一个IT高校,教职工也达到了一定的规模,但现今教师绩效考核依然是部分使用系统统计,部分使用excel登记汇总,甚至部分职工会到年末再填报,总体效率不高,且比较混乱,而且数据也不利于保存,每年年末的绩效统计,需要结合多个统计结果再进行汇总,相对比较麻烦,且无形中给学院管理层造成了极大的工作量,此外如此原始的绩效考核方式,不适合于广东东软学院的教职工管理,为了提供工作效率,减少工作量,因此开发此系统。1.1.3 项目内容与成果本人在此系统中主要负责:1.对系统的整体功能及整体业务开展了需求分析,并从中细化出数据库的功能及业务需求,从而形成了前期的系统需求及数据库设计文档,并逐步完善文档;2.通过项目成员的讨论,确定系统整体样式风格并确定初步系统原型,进而完成制度管理与制度细则页面的设计与实现,3.通过前期完成的数据库设计文档,很快便完成了数据库设计与后期的逐渐完善;通过以上的工作内容,收获到的项目成果有:例如:1.完成了系统需求文档与数据库设计文档,奠定了系统开发的基础与前提,给系统开发明确了方向;2.运用了JavaScript语言及react框架,实现了前后端的数据交互;3.设计了mysql数据库,通过函数、游标、触发器等的运用,实现了数据库表的多表增删查改与绩效统计。第二章 开发语言与框架简介2.2 系统开发工具简介 2.2.1 硬件环境环境硬件配置开发环境Win10 64 位Intel(R) Core(TM) i5-7300HQ CPU 2.50GHz (4 CPUs), 2.2GHz8G 内存开发工具Vs code,navicat2.2.2 开发语言(1)JavaScript基本特点。JavaScript是一种非常常见的网络脚本语言,已经被广泛用于Web应用开发,常常用于网页添加各式各样的动态功能,以提供用户更流畅和美观的视觉效果。通常情况下JavaScript脚本是通过嵌入到HTML中来实现自身的功能的2。JavaScript脚本语言于其他语言一样,拥有着它独特的基本数据类型、程序的基本程序框架、表达式及算术运算符。JavaScript提供有四种基本的数据类型及两种特殊数据类型用于处理数据与字符。而变量则提供存放信息的位置,表达式则可以完成较为复杂的数据处理,可以实现web页面的各种交互。10此系统中前端的样式设计有JavaScript与css语言搭配完成,并且JavaScript还参与数据的预处理,将用户输入的数据,做简单处理后提交后端;当与后端交互时也要获取数据后并对数据进行预处理再展示到前端。(2)Node.js基本特点:单线程4Node.js就不为每个客户连接创建一个新线程,而是只使用单个线程。当出现新用户连接了,便触发一个内部事件,这是一个内部机制,也是Node.js强大之处。然后通过非阻塞I/O和事件驱动机制,让Node.js程序宏观上看起来像是并行的。因此使用Node.js,一个8GB内存的服务器,可以承担同时最大连接用户数超过4000个,比原本的4000个提高了数量。此外,单线程的带来的好处,就是还有操作系统完全消除了线程创建、销毁的时间开销。缺点也是比较明显的,就是当一个用户出现了线程的崩溃,整个服务也都跟着崩溃了。多线程、单线程的一个对比。非阻塞I/O11 由于Node.js中采用了非阻塞型I/O机制,即使执行了数据库访问的指令后,也能立即转而执行其他的代码,将数据库返回结果的处理代码暂时存放于回调函数中,由此来提高程序的执行效率。当某一个I/O执行结束时,便以事件的形式告知执行I/O操作的线程,线程就会去调用这个事件的回调函数。为了处理异步I/O,线程必定要有事件循环,不断的刷新查看有没有未处理的事件,依次执行。事件驱动event-driven在Node中,客户端请求创建连接或提交数据等请求,就会触发相应的事件。在Node中,在单一时刻,一个线程只能调用一个事件回调函数,但是在调用一个事件回调函数的过程中,也可以转向处理其他事件,例如:创建新用户连接,然后返回继续执行原事件的回调函数,这种处理机制,称之为“事件环”机制。2.2.3开发框架软件框架是软件开发中的基石,完善的软件框架不仅可以加快软件开发速度、提高软件质量、还可以降低软件开发成本。传统的基于JavaScript语言开发的Web应用框架,使用前后端高度耦合的开发方式,且在服务端编程方式以及部署方案上的低效严重制约了Web应用的性能提升与开发效率,而依托于Google V8引擎的Node.js由于其事件驱动以及非阻塞I/O的特性使其在Web应用开发中有极其重大的地位,特此开发一套新型的Web应用框架以提高软件开发的效率则显得极为重要。因此在项目组多次谈论与指导老师的沟通下,确定了这种基于Node.js的Web应用开发框架6(1)Express基本特点:Express 是基于Node.js平台,快速、开放、极简的Web开发框架,提供一系列强大特性,支持各种Web应用的创建。Express是在Node.js上进行了扩展Web应用所需的功能,而不是对node.js 所拥有的特性进行二次抽象。Express的强大在于:丰富的HTTP工具、Connect框架的中间件,创建强大以及友好的API。5Express 框架核心特性:l 可以通过设置中间件来响应HTTP请求。l 通过定义路由表来响应各种的HTTP请求。l HTML页面的动态渲染通过向模板传递参数。(2)React基本特点JavaScript库的用户界面是由React构建的, Web应用程序的视图层也是React构建的。React全部的应用程序的核心就是组件,即Component。组件是一个子包含的模块,组件可提供一些输出,因此类似按钮或输入框等元素均可作为React组件,组件和组件之间可以相互嵌套组合,一个或多个其他的组件之间也可以是相互包含的。Error! Reference source not found. .React采用声明范式,因此可以非常便捷地描述应用,即声明式设计。 .React通过地减少与DOM的交互,即对DOM的模拟(虚拟),即React的高效性。 .React与绝大部分已知的库或框架都可以实现非常友好地配合,即React地灵活性。 .JSX 是 JavaScript 语法上的一个扩展。React开发不一定需要使用 JSX ,但推荐使用JSX。 .通过 React 构建的组件,使得代码得到重复使用,非常适合应用于大项目的开发中。 .React实现了单向响应的数据流,从而精简了代码,这也是它为什么比传统数据绑定更简单的原因之一。Error! Reference source not found.(3)Mysql基本特点:MySQL是瑞典的MySQL AB公司开发的一个开放源码的关系型数据库管理系统,但该公司在2008年被昇阳微系统(Sun Microsystems)收购。有趣的是昇阳微系统公司在2009年,甲骨文公司(Oracle)收购了,可谓是“螳螂捕蝉黄雀在后”。MySQL最终成为Oracle旗下的一个产品。MySQL在过去以高性能、低成本、可靠性好等特点,已经成为最流行的开源数据库,因此被广泛地应用于互联网上的各种中小型网站中。随着MySQL的不断发展,更多大规模网站和应用也都开始使用MySQL数据库。3MySQL的特点:l 为了保证源代码的可移植性,使C和C+进行编写,并使了多种编译器进测试。 l 持多种操作系统,跨平台性强,如Linux、Windows、AIX、FreeBSD、HP-UXMacOS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris等系统均可使用l 持多线程,进而提高CPU资源利用率l 提供多语持,适用于各种常用的字符集编码如GB2312、BIG5、UTF8l 提供多种数据库连接途,适用于TCP/IP、ODBC和JDBC等l 持多种存储引擎,可以处理拥有上千万条记录的型数据库,适用于型的数据库。 l Mysql具有定制功能,采了GPL协议,可以通过修改源码来定制的Mysql系统l 另外最重要的原因就是:不仅使范围、跨平台持性好, 拓展性极强,提供了多种语的调的API,而且开源。Error! Reference source not found.(4)Mysql用于哪些处理根据需求文档此系统采用的是mysql5.7的版本数据库,该数据库设计有8个数据表,用于存储各种各样的数据,其中有职位,活动,事项图片,事项制度细则,制度细则等五个关系表,主要用于关联部分存在多于多关系的表。有多个触发器与存储过程,用于多个表之间的增删查改。各个表的字段字符集都统一使用UTF-8,避免在前端交互时出现乱码等情况第三章 系统分析与设计3.1 需求分析3.1.1 功能需求广东东软学院日常业务数据以及针对用户群体进行调研分析发现,本系统的使用人群年龄段为22-60岁,该年龄阶段客户人群年纪差距较大,因此web端设计不能过于简约,同时也不能过于繁杂,功能模块关键词要尽量清晰,尽量让用户一眼明了该功能模块的作用。以下为系统主要功能结构及各个模块的E-R图。1 (1)系统功能结构图 教师功能模块概要描述表:序号功能名称功能需求标识优先级简要描述A1注册登录A1高用户账号的注册登录A2个人中心A2高用户对个人信息等进行管理操作A3绩效登记A3高填写绩效考核事项A4查看历史绩效A4高展示用户已登记绩效事项,但不可更改绩效。 管理后台功能概要描述表:序号功能名称功能需求标识优先级简要描述B1注册登录B1高管理账号的注册登录B2绩效管理B2高对历史绩效进行增删查改操作B3审核提交重要事项B3高对重大事项审核提交B4教师用户管理B4高管理教师用户的信息,下个月并且可以实现增删查改(1) 用户个人中心功能图3.1.1-1个人中心流程图个人中心表功能编号A2功能名称用户个人中心所属部分用户模块功 能描 述用户通过个人中心界面设置性别、生日等个人信息,同时对绩效事项进行登记进行操作输入项个人信息:性别varchar3、生日date;地址管理:手机号int13、姓名varchar50、任教课程名,varchar50,任教班级varchar50,入职时间date处理描述判断用户修改字段是否符合规范,不符合规范的返回提示输入错误,符合规范的,则保存并提交数据库输出项输入不合法提示新增/修改成功提示界面要求简洁、明了、辅助提示(2) 绩效登记展示功能图3.1.1-2绩效登记流程图绩效登记表功能编号A3功能名称绩效登记所属部分用户模块功 能描 述用户可通过绩效登记,将绩效事项填写并提交,常规事项,默认自动通过审核,重大事项,提交并等待审核。输入项填写绩效事项信息处理描述判断各个输入是否符合规范,如全部都符合规范,则根据绩效标签划分等级,常规事项默认通过,直接提交数据库并保存,重大事件需要审核提交到学院管理人员账号上,等待审核通过。输出项常规事项,提交后输出绩效登记完成,并且返回登记首页;重大事项,提交后输出等待审核通过。界面要求标签明确,便于划分等级一级类目【重大事项】二级类目【常规事项】(3) 查看历史提交绩效功能图3.1.1-3查看历史绩效流程图查看历史绩效表功能编号A4功能名称查看历史绩效所属部分用户模块功 能描 述用户可以通过该模块查看历史提交的绩效,并检查是否有误,有错误的可以申诉。输入项无输入处理描述根据时间判断,并检索个人历史绩效记录。输出项输出个人历史绩效登记记录界面要求展示历史绩效记录。(4) 管理员注册登录功能图3.1.1-4管理员注册登录功能流程图管理员注册登录功能表功能编号B1功能名称管理员注册登录所属部分管理端功 能描 述管理员通过授权码进行账号注册,设置登录名和登录密码。注册成功后跳转到登录页面,输入已有账号及对应密码进行登录进入管理后台,如忘记密码可通过验证进行密码重设输入项注册界面:授权码varchar(50)、管理员名称varchar(50)、管理员密码varchar(50);登录界面:管理员名称varchar(50)、图形验证码char4、管理员密码varchar(50);忘记密码:原登录密码varchar(50)、新登录密码varchar(50)、图形验证码char4;处理描述注册页面判断管理员输入的授权码是否有效、登录账号和密码是否符合规范;登录页面判断管理员输入登录名及登录密码是否存在及相对应,图形验证码是否与图形对应正确;修改密码页面判断用户输入原登录密码是否正确,验证码是否正确,登录密码是否符合规范;输出项各种为空或错误提示注册/登录 成功提示界面要求简洁、明了、辅助提示(5) 管理全体教师历史绩效功能图3.1.1-5查看全体教师历史绩效流程图查看全体教师历史绩效表功能编号B2功能名称管理全体教师历史绩效功能所属部分后台管理端功 能描 述管理员通过查看历史绩效记录,可以对历史绩效记录进行核实,虚假多次登记的可进行删除操作,并返回用户删除原因。输入项输入时间段,数据库数据文件按照时间分区处理描述判断管理员是否有修改分类信息,进行数据保存输出项更改成功/失败提示并返回用户操作原因界面要求简洁、明了、辅助提示(6) 查看审核功能图3.1.1-6查看审核流程图查看审核功能表功能编号B3功能名称查看审核功能所属部分管理端功 能描 述该功能用于管理员对提交待审核事项进行查看核实,如符合提交给予提交通过,不符合提交,可驳回。输入项如需要驳回提交审核,输入驳回原因。处理描述保存并提交通过审核的事项;如驳回审核,则返回驳回原因给用户。输出项审核事项;驳回原因。界面要求模块清晰,操作符合逻辑,界面简洁明了(7) 管理用户账号密码功能图3.1.1-7管理账户密码流程图管理账户密码功能表功能编号B4功能名称管理用户账号密码所属部分管理端功 能描 述该功能用于用户账号密码忘记时,可通过后台更改。输入项输入个人信息,查看用户信息处理描述根据输入信息进行检索并输出结果。输出项输入无误则输入结果输入错误是返回错误提示。界面要求模块清晰,操作符合逻辑,界面简洁明了3.2 系统设计3.2.1 总计设计该系统的核心功能是教职工能通过web端进行绩效的线上填报,而且为了节省系主任等领导的工作量一般事项会设置默认通过,通过不同事项的标签来分类,系统的主要业务流如下图所示:9 2.2.1-1图系统有超级管理员账号,主任级别账号,教职工账号等不同账号;每个账号有不同的角色,不同角色有不同的权。超级管理员账号拥有数据库及系统的全部权限,主要负责系统及数据库的安全与数据传输问题;系主任账号可查看该系全部教职工绩效考核情况及各个教职工的事项内容,审核重大事项申请添加删除新职工账号,添加删除新的事项规则;教职工账号可以申报个人绩效事项,修改个人信息,查看个人事项记录。具体用例图如下:超级管理员账户用例图:系主任账户用例图教职工账户用例图3.2.2 数据库设计广东东软学院拥有教职工约500人,因此数据量对于数据库来说不会太大,而且也不存在多数人在同一时段访问系统,对数据库及服务器压力没有很大,所以选用mysql,因为不存在高并发所以不用设置多节点,因此数据库的压力其实没有很大,根据数据库设计文档,数据库采用mysql5.7,端口使用3306,字符集编码统一使用UTF-8,避免产生乱码,express服务器端口为3001,react服务器端口为3002,数据库名为performance_db。7(1) 数据库表E-R图图3.2.2-1(2)数据字典1. 用户表(users)用于存储各个用户的字段信息,用户编号为自动生成,无需手动输入。字段描述字段名称字段类型字段长度备注用户编号u_idinteger主键、非空职工号u_idsvarchar127职工名称u_namevarchar50非空用户密码u_passwordvarchar50非空职工性别u_sexchar10职工电话u_phonevarchar20职工邮箱u_emailvarchar50职工住址u_addressvarchar255职工职位ps_idinteger外键、非空出生日期u_birthdaydate入职时间u_onboardingdate2. 事项表(performance)主要用于存储各个事项中所需填报的信息,其中事项编号与事项状态不用手动输入,由系统自动生成。字段描述字段名称字段类型字段长度备注事项编号p_idinteger主键、非空事项标题p_topicvarchar1024非空活动时间p_starttimetimestamp非空活动时长p_timelengthfloat(单位:小时)活动地点p_addressvarchar1024非空事项内容p_texttext非空事项状态p_statusinteger非空制度细则r_d_idinteger外键、非空驳回理由p_turndownvarchar1024其他条目p_othertext3. 系部表(department)用于存储各个系部的信息,其中系部编号同样由系统生成。字段描述字段名称字段类型字段长度备注系部编号d_idinteger主键、非空系部名称d_namevarchar1024非空事项默认状态d_statusinteger非空4. 制度表(rules)用于储存各种绩效加分制度,制度编号同样自动生成。字段描述字段名称字段类型字段长度备注制度编号r_idinteger主键、非空制度名称r_typevarchar1024非空制度内容r_texttext非空5. 制度细则表(r_detail)用于储存各个加分绩效制度的详细信息。字段描述字段名称字段类型字段长度备注细则编号r_d_idinteger主键、非空细则名称r_d_namevarchar1024非空主办人得分r_d_u_scoresinteger非空细则得分r_d_p_socresinteger非空细则内容r_d_p_wordstext非空制度编号r_idinteger外键、非空其他条目r_d_othertext6. 文件表(files)用于存放各个事项的相关文件。字段描述字段名称字段类型字段长度备注文件编号f_idinteger主键、非空文件名称f_namevarchar1024非空文件地址f_pathvarchar1024非空事项编号p_idinteger外键、非空7. 职位关系表(positions)用户存储各个用户的职位信息。字段描述字段名称字段类型字段长度备注职位编号p_idinteger主键、非空职位名称p_namevarchar1024非空系部编号d_idinteger外键、非空职位等级p_levelinteger非空8. 活动关系表(activity)用于用户表与事项表的关系表,因为用户表存在多对多的关系,不能直接关联,因此使用活动表来实现间接管理。字段描述字段名称字段类型字段长度备注用户编号u_idinteger主键、外键、非空事项编号p_idinteger主键、外键、非空用户编号(举办人)p_applicantinteger外键、非空获得分数a_scorefloat非空(3)触发器E-R图 删除部门时,删除该部门下的全部职位 删除规则时,删除该规则对应的细则。 删除用户时,删除该用户对应的活动。 删除事项时,删除对应的文件, 删除对应的活动。第四章 系统功能实现4.1 业务流程账户登录页面,该页面没有设置注册功能,因为打算采用每个教职工的工号进行登录就好,整理好每个教职工的账号密码后,统一用文件导入到数据库中去,这样每个职工就都能使用自己的职工号进行登录了。界面如下图所示:通过系统主页可以看到系统的全部功能模块,有主页、员工管理、事项列表、事项审核、事项申请、绩效统计、制度管理、制度列表等组成,系统主页如图所示:系主任可通过员工管理页面对员工帐号信息进行修改,如添加新的职工帐号或删除账号,当添加员工时,会将添加的员工信息存到数据库中区,具体员工管理页面如图所示:通过事项列表可查看个人事项记录,系主任可通过事项列表查看本系下的全部教职工提交的事项记录,并且可以通过事项记录查看事项内容,事项列表如图所示:事项审核页面,可以查看提交的事项状态,有待审核,通过审核,驳回等三个状态,系主任账号有权限审核教职工提交的事项,可驳回,可通过,教职工只能查看事项状态及详情,具体由下图可知:通过事项申请有三个页面,第一个活动登记,第二个论文发表,第三个获奖评比,暂时将全部的事项类型分为这三部分;第一个图为活动登记, 登记信息有活动名称、活动类别、开始时间、时长、地点、成员、个人得分、组员得分、活动信息,并且可上传文件材料作为作证材料。此图为教职工发表论文可作为绩效申报,提交论文发表绩效需要填报,论文标题,论文种类,论文其他作者,论文发表时间,个人的得分(不同论文期刊有不同的分值权重),可以添加论文文件,跟期刊文件。教职工在论文或者各种比赛中获奖也是能够作为绩效加分的,申请获奖加分,需要填写获奖名称,获奖类别,申请分数,获奖简介(作为奖品的介绍),添加文件(可为获奖通知或证书等获奖作证材料)事项统计页面,用于根据不同账户级别统计个人或全系教职工的的绩效情况,如教职工账号就可以统计汇总个人按月度排名或者按年度排名在全系中总分数为多少及排名情况,如系主任账号,可统计汇总年度全息教职工绩效排名情况,直接可以找到绩效比较低的教职工,做及时的提醒。具体如下图所示:制度管理页面,可通过制度管理页面对现有的制度进行删除或修改,也可通过添加制度来新增新的绩效制度,具体如下图所示。制度列表,可展示现有的制度规则,如果对现有规则需要修改可通过制度管理页面来进行修改或者删减。4.2 核心代码实现(1)数据库表代码: 制度表1. - - 2. - Table structure for rules 制度表 3. - - 4. DROP TABLE IF EXISTS rules; 5. CREATE TABLE rules ( 6. r_id int(11) NOT NULL AUTO_INCREMENT, 7. r_type varchar(1024) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, 8. r_text text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, 9. PRIMARY KEY (r_id) USING BTREE 10. ) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; 部门表1. - - 2. - Table structure for department 部门表 3. - - 4. DROP TABLE IF EXISTS department; 5. CREATE TABLE department ( 6. d_id int(11) NOT NULL AUTO_INCREMENT, 7. d_name varchar(1024) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, 8. d_status int(11) NOT NULL, 9. PRIMARY KEY (d_id) USING BTREE 10. ) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; 职位表1. - - 2. - Table structure for positions 职位表 3. - - 4. DROP TABLE IF EXISTS positions; 5. CREATE TABLE positions ( 6. p_id int(11) NOT NULL, 7. p_name varchar(