为了保证更好的兼容性和协同开发,在开发的过程中对数据库表及字段的命名请遵循以下规范。
**数据库表的命名**
数据库表一律采用全部小写字母加下划线链接的格式,且业务模块数据库表统一使用前缀db_,部分业务模块的数据库表命名参考下表:
| 应用名称 | 数据表前缀 |完整示例 |
| --- | --- | --- |
| 办公系统 | office | db_office_meet |
| 征收系统 | levy |db_levy_project |
| 内控系统 | neikong | db_neikong_assest |
**字段命名**
数据库表中字段遵循使用全部小写字母、下划线及数字组合而成,且字段名应当具有描述性,见名知意,例如org_id,org_name,org_full_name等。
**视图命名**
如果您在开发的过程中需要建立视图来处理一些多表连接查询,则视图命名请遵循以下规范
1)、使用小些字母、数字及下划线组合
2)、必须以view_开头,且后面紧跟应用标识
3)、应当尽可能的描述关联的标间关系或者视图的作用。
视图命名示例
view_sys_user_data
view_office_meet_room_seat
**存储过程的命名**
如果您在开发中需要使用存储过程来处理一些事情,存储过程的命名请遵循以下规范
1)、使用小些字母和下划线及数字组合的方式。
2)、必须以sp_开头,之后紧跟应用标识
3)、需要描述出存储过程的功能作用
存储过程命名示例
sp_sys_getuserinfo
sp_office_getsigndata
**触发器命名**
如果您希望使用触发器来自动完成一些关联操作,触发器的命名请遵循以下规范
1)、使用小写字母、数字及下划线组合
2)、必须以trigger_开头,且之后紧跟应用标识
3)、需要描述出触发器所在的表及字段信息,或者描述出触发器的功用信息
触发器命名示例
trigger_sys_syncuserinfo
trigger_sys_user_for_insert
**特约字段**
由于系统引入了工作流引擎,在需要走审批流程的业务数据主表中需要存在一些特约字段,暂定字段名如下表:
| 字段名称 |数据类型 | 字段描述 |备注说明 |
| --- | --- | --- | --- |
| sano | varchar(64) | 单据编号 |唯一索引,系统内必须唯一 |
| status |tinyint(2) | 审批状态 | |
| explain | varchar(255) |审批说明 | |
| apply_id|varchar(64)|申请用户编号| |
| apply_name| varchar(255)| 申请用户姓名| |
| apply_org_id | varchar(64)| 申请用户部门编号 | |
| apply_org_name | varchar(255) | 申请用户部门名称 | |
| apply_time| int(11) |申请时间| 存储UNIX时间戳||
同时,由于需要兼容工作流引擎,采用了双用户表、组织机构表、角色表映射,某些特殊字段的数据类型需要按照以下约定来处理,虽然实际上这些字段存储的可能是数值,但是在设计数据库结构时需要将这些字段设计为字符串形式,且写入数据时以字符串的形式保存,具体如下表:
| 字段名称 |数据类型 | 字段描述 |备注说明 |
| --- | --- | --- | --- |
| 用户编号|varchar(64) | | |
| 组织机构编号|varchar(64) | | |
| 角色编号 | varchar(64)| | |
凡是需要在您设计的数据库表中需要存储以上列举的类型的字段是,请严格按照此表中约定的数据类型设计,并在编码过程中按此数据类型存储(不要进行强制转整操作和直接与数值类型的0进行大小比较)
另外,如果要在同一张表中描述审批状态和数据状态,建议使用字段state描述审批状态以外的状态值
| 字段名称 |数据类型 | 字段描述 |备注说明 |
| --- | --- | --- | --- |
| status |tinyint(2) | 数据状态 |具体状态值根据业务场景需要自行设置,一般建议使用0和1来描述 |
对于数值类型的字段,如果不存在负数值的情况时,建议将数据类型的属性设置为无符号的;而取值为是/否类型的字段,命名建议以is_开头,数据类型定义为tinyint(2),例如:
| 字段名称 |数据类型 | 字段描述 |备注说明 |
| --- | --- | --- | --- |
|is_disabled|tinyint(2)|是否禁用| 1-是 0-否|
|is_locked|tinyint(2)|是否锁定|1-是 0-否|
**数据库引擎的选用**
对于一旦入库,后续不会出现频繁的数据写入或更新操作的数据表,为了提高读取数据的效率建议使用MYISAM引擎
对于需要保证数据一致性(支持事务)的数据表或者写入操作频繁的数据表,建议使用INNODB引擎。
**字符集**
数据库统一采用UTF-8编码(utf_gernaeral_ci)。
**其他注意事项**
在建立数据表时,需要填写准确的数据表备注;为数据库表创建字段时,需要添加字段的备注说明。
- 简介
- 目录结构说明
- 开发规范
- 文件命名规范
- 函数的命名
- 命名空间命名规范
- 数据库命名规范
- 编码注释规范
- 文件注释规范
- 方法注释规范
- 行内注释
- 外包开发人员特别说明
- 前端开发
- 组件的使用
- 单文件上传
- 多文件上传
- 选择组织机构
- 选择用户
- 选择角色
- 选择用户组
- 手机门户
- 常用值对照表
- 工作流审批状态对照
- 请假类型键值对照
- 后端开发
- 访问权限
- 数据权限
- 公共函数库
- 用户数据共享
- 通过类库共享用户数据
- 跨应用共享用户数据
- 组织机构操作
- 公共数据词典
- 创建词典
- 读取词典
- 配置词典
- 消息推送
- 消息发送
- 发送邮件
- 发送短信
- 企业微信
- 钉钉消息
- 即时通讯(站内消息)
- 二维码
- 文件压缩与解压
- 文档转换
- 工作流引擎
- 工作流简介
- 引入控制器片段
- ResetFull接口
- 01.提交单据发起流程
- 06.获取当前用户待办列表
- 07.获取指定任务信息
- 08.获取流程下个可执行节点
- 09.获取指定流程所有节点
- 10.获取指定编号的流程节点
- 11.获取指定节点的审批人员信息
- 手写签名
- PC端手写签名的实现
- 手机端手写签名的实现
- 智能硬件
- 签名板
- 高拍仪
- 会知声(道邦魔盒)
- 宇泛人脸识别
- 设备
- 设备列表
- 添加设备
- 更新设备
- 设备详情
- 删除设备
- 网络查询
- 启用设备
- 禁用设备
- 重启设备
- 重置设备
- 获取更新包信息
- 设备升级
- 人员授权(批量)
- 人员销权
- 授权查询
- 人员
- 人像