文件状态: [√] 草稿 [ ] 正式发布 [ ] 正在修改 | 文件标识: |
|
当前版本: | X.Y | |
作 者: |
| |
完成日期: | Year-Month-Day |
Company Information |
版本历史
版本/状态 | 作者 | 参与者 | 起止日期 | 备注 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
目 录
0. 文档介绍
0.1 文档目的
为明确软件需求,统一各位成员的数据操作接口,特编写这个数据库详细设计说明书,本文档供本组开发人员参考
0.2 文档范围
0.3 读者对象
本项目所有开发人员
0.4 参考文献
提示:列出本文档的所有参考文献(可以是非正式出版物),格式如下:
[标识符] 作者,文献名称,出版单位(或归属单位),日期
例如:
[AAA] 作者,《立项建议书》,机构名称,日期
[SPP-PROC-SD] SEPG,系统设计规范,机构名称,日期
0.5 术语与缩写解释
缩写、术语 | 解释 |
SPP | 精简并行过程,Simplified Parallel Process |
SD | 系统设计,System Design |
|
|
|
|
… |
|
1. 数据库环境说明
提示:
(1)说明所采用的数据库系统,设计工具,编程工具等
(2)详细配置
2. 数据库的命名规则
提示:
(1)完整并且清楚的说明本数据库的命名规则。
(2)如果本数据库的命名规则与机构的标准不完全一致的话,请作出解释。
3. 逻辑设计
提示:数据库设计人员根据需求文档,创建与数据库相关的那部分实体关系图(ERD)。如果采用面向对象方法(OOAD),这里实体相当于类(class)。
4. 物理设计
提示:
(1)主要是设计表结构。一般地,实体对应于表,实体的属性对应于表的列,实体之间的关系成为表的约束。逻辑设计中的实体大部分可以转换成物理设计中的表,但是它们并不一定是一一对应的。
(2)对表结构进行规范化处理(第三范式)。
4.0 表汇总
表名 | 功能说明 |
bas_dict(字典表) | 保存条目,地区,服务类型 |
cst_activity(交往记录表) | 保存客户和企业的交往信息 |
cst_customer(客户信息表) | 保存客户的详细信息 |
cst_linkman(客户联系人表) | 保存客户的联系人记录 |
cst_lost(客户流失表) | 保存客户流失的原因 |
cst_service(服务表) | 保存企业为客户的服务记录 |
sal_chance(机会表) | 保存企业和公司建立关系的机会 |
sal_plan(计划表) | 保存企业为开发客户所做的计划 |
sys_right(权限表) | 保存本系统的所有权限模块 |
sys_role(角色表) | 保存本系统中所有的角色 |
sys_role_right(角色表和模块表的关联表) | 保存角色表和模块表的主键 |
sys_user(用户表) | 保存用户的信息 |
orders(订单表) | 保存客户的订单信息 |
orders_line(订单明细表) | 保存订单明细 |
Product(商品表) | 保存商品的信息 |
Storage(仓库表) | 保存仓库信息 |
4.1 bas_dict(字典表)
bas_dict | (字典表) | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
dict_id | 编号 | bigint | false |
| 主键自动增长 |
dict_type | 类别 | nvarchar(50) | false |
|
|
dict_item | 条目 | nvarchar(50) | false |
|
|
dict_value | 值 | nvarchar(50) | false |
|
|
dict_is_editable | 是否可编辑 1-可以;0-不可以 | bit | false |
|
|
dict_status | 状态:0-正常、1-删除 |
|
|
|
|
补充说明 |
|
约束条件 : 是否是主键,是否唯一等等
4.2 sal_chance(销售机会表)
sal_chance | 机会销售表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
chc_id | 主键自动增长(1,1) | bigint | false |
| 主键 |
chc_source | 机会来源 | nvarchar(50) | true |
|
|
chc_cust_name | 客户名称 | nvarchar(100) | false |
|
|
chc_title | 概要 | nvarchar(200) | false |
|
|
chc_rate | 成功机率 | int | false |
|
|
chc_linkman | 联系人 | nvarchar(50) | true |
|
|
chc_tel | 联系电话(固定) | nvarchar(50) | true |
|
|
Chc_mobile | 联系人手机 | nvarchar(50) | True |
|
|
chc_desc | 机会描述 | nvarchar(2000) | false |
|
|
chc_create_id | 创建人编号 | bigint | false |
| 外键 |
chc_create_date | 创建时间 | datetime | false |
|
|
chc_due_id | 指派的客户经理编号(sys_user表) | bigint | true |
| 外键 |
chc_due_date | 指派时间 | datetime | true |
|
|
chc_status | 状态:1--未指派;2--已指派3--开发成功;4--终止开发(开发失败)。 | char(1)[微软用户1] | false |
|
|
补充说明 |
|
约束条件 : 是否是主键,是否唯一 等等
4.3 cst_activity(交往记录表)
cst_activity | 交往记录表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
atv_id | 编号(主键自动生长(1,1) | bigint | false |
| 主键 |
atv_cust_no | 客户编号 | char(17)[微软用户2] | true |
| 外键 |
atv_date | 交往日期 | datetime | false |
|
|
atv_place | 交往地点 | nvarchar(200) | false |
|
|
atv_title | 交往概要 | nvarchar(500) | false |
|
|
atv_desc | 详细信息 | nvarchar(2000) | true |
|
|
补充说明 |
|
4.4 cst_customer(客户信息表)
cst_customer | 客户信息表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
cust_no-(编码格式为KHyyyyMMddhhmmss+3位序列数) | 客户编号 | char(17)[微软用户3] | false |
|
|
cust_name | 客户名称 | nvarchar(100) | false |
| 唯一 |
cust_region | 地区 | nvarchar(50) | true |
|
|
cust_manager_id | 客户经理编号 | bigint | true |
| 外键 |
cust_level[微软用户4] | 客户等级 | int | true |
|
|
cust_satisfy | 满意度(1-5),默认为3 | int | true |
|
|
cust_credit | 信用度(1-5),默认为3 | int | true |
|
|
cust_addr | 地址 | nvarchar(300) | true |
|
|
cust_zip | 邮政编码 | nvarchar(10)[微软用户5] | true |
|
|
cust_tel | 电话 | nvarchar(50) | true |
|
|
cust_fax | 传真 | nvarchar(50) | true |
|
|
cust_website | 网址 | nvarchar(50) | true |
|
|
cust_licence_no | 营业执照注册号 | nvarchar(50) | true |
|
|
cust_chieftain | 法人 | nvarchar(50) | true |
|
|
cust_bankroll | 注册资金 | bigint | true |
|
|
cust_turnover | 营业额 | bigint | true |
|
|
cust_bank | 开户银行 | nvarchar(200) | true |
|
|
cust_bank_account | 银行账号 | nvarchar(50) | true |
|
|
cust_local_tax_no | 地税登记号 | nvarchar(50) | true |
|
|
cust_national_tax_no | 国税登记号 | nvarchar(50) | true |
|
|
cust_status | 客户状态:1--正常;2--流失;3--删除。
| char(1) | true |
|
|
补充说明 |
|
4.5 cst_linkman(客户联系人表)
cst_linkman | 客户联系人表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
lkm_id | 联系人编号(主键自动增长) | bigint | false |
| 主键 |
lkm_cust_no | 客户编号 | char(17) | false |
| 外键 |
lkm_name | 联系人名称 | nvarchar(50) | true |
|
|
lkm_sex | 性别 | nvarchar(5) | true |
|
|
lkm_postion | 职位 | nvarchar(50) | true |
|
|
lkm_tel | 办公室电话 | nvarchar(50) | false |
|
|
lkm_mobile | 手机 | nvarchar(50) | true |
|
|
lkm_memo | 备注 | nvarchar(300) | true |
|
|
补充说明 |
|
4.6 cst_lost(客户流失表)
cst_lost | 客户流失表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
lst_id | 编号(主键自动增长1,1) | bigint | false |
| 主键 |
lst_cust_no | 客户编号 | char(17) | false |
| 外键 |
lst_cust_manager_id | 客户经理编号 | bigint | false |
|
|
lst_last_order_date | 上次下单时间 | datetime | true |
|
|
lst_lost_date | 确认流失时间 | datetime | true |
|
|
lst_delay | 暂缓措施 | nvarchar(4000) | true |
|
|
lst_reason | 流失原因 | nvarchar(2000) | true |
|
|
lst_status | 流失状态 1-警告(还未做暂缓处理操作),2-暂缓流失(已经做了暂缓处理操作),3-已流失 | Char(1) | false |
|
|
补充说明 |
|
4.7 cst_service(客户服务表)
cst_service | 客户服务表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
svr_id | 服务编号(主键) | bigint | false |
|
|
svr_type | 服务类型 | nvarchar(20) | false |
|
|
svr_title | 服务概要 | nvarchar(500) | false |
|
|
svr_cust_no | 客户编号,外键 | char(17) | true |
| 外键 |
svr_status | 服务状态 | nvarchar(10) | false |
|
|
svr_request | 服务请求 | nvarchar(3000) | false |
|
|
svr_create_id | 创建人编号 | bigint | false |
|
|
svr_create_date | 创建日期 | datetime | false |
|
|
svr_due_id | 分配给某人的编号(客户经理编号) | bigint | true |
|
|
svr_due_date | 分配时间 | datetime | true |
|
|
svr_deal | 服务处理 | nvarchar(3000) | true |
|
|
svr_deal_date | 处理日期 | datetime | true |
|
|
svr_result | 处理结果 | nvarchar(500) | true |
|
|
svr_satisfy | 满意度 | int | true |
|
|
补充说明 |
|
4.8 sal_plan(客户开发计划表)
sal_plan | 客户开发计划表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
pla_id | 计划编号 | bigint | false |
| 主键 |
pla_chc_id | 机会销售编号 | bigint | false |
| 外键 |
pla_date | 日期 | datetime | false |
|
|
pla_todo | 计划项 | nvarchar(500) | false |
|
|
pla_result | 执行结果 | nvarchar(500) | true |
|
|
补充说明 |
|
4.9 sys_right(权限表)
sys_right | 权限表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
right_code | 权限编号(主键) | varchar(50) | false |
|
|
right_parent_code | 模块父编号 | varchar(50) | true |
|
|
right_type | 权限类型 | varchar(20) | true |
|
|
right_text | 权限名称 | varchar(50) | true |
|
|
right_url | url(权限对应功能的访问url) | varchar(100) | true |
|
|
right_tip | 显示 | varchar(50) | true |
|
|
Right_node_type | 权限节点类型0-菜单级别 1-按钮级别 | Char(1) | true | 0 |
|
补充说明 |
|
4.10 sys_role(角色表)
sys_role | 角色表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
role_id | 角色编号(主键) | bigint | false |
|
|
role_name | 角色名称 | nvarchar(50) | false |
|
|
role_desc | 角色备注 | nvarchar(50) | true |
|
|
role_flag | 角色状态 | int | true |
|
|
补充说明 |
|
4.11 sys_role_right(角色权限表)
sys_role_right | 角色权限表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
rf_id | 编号 | bigint | false |
| 主键 |
rf_role_id | 角色编号 | bigint | fasle |
| 外键 |
rf_right_code | 权限编号 | varchar(50) | false |
| 外键 |
补充说明 |
|
4.12 sys_user(用户表)
sys_user | 用户表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
usr_id | 编号(自动增长) | bigint | false |
| 主键 |
usr_name | 名称 | nvarchar(50) | false |
|
|
usr_password | 密码 | nvarchar(50) | false |
|
|
usr_role_id | 角色编号 | bigint | true |
| 外键 |
usr_flag | 状态(0:已删除,1:正常) | int | false |
|
|
补充说明 |
|
4.13 orders(订单表)
orders | 订单表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
odr_id | 订单编号(自动增长1,1) | bigint | false |
| 主键 |
odr_customer_no | 订单客户公司编号 | char(17) | false |
|
|
odr_date | 订单日期 | datetime | false |
|
|
odr_addr | 地址 | nvarchar(200) | true |
|
|
odr_status | 状态(5:已发货 6:已回款) | char(1) | false |
|
|
补充说明 |
|
约束条件 : 是否是主键,是否唯一 等等
4.14 orders_line(订单明细表)
orders_line | 订单明细表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
odd_id | 明细编号 | bigint | false |
| 主键 |
odd_order_id | 订单编号 | bigint | false |
| 外键 |
odd_prod_id | 商品编号 | bigint | false |
| 外键 |
odd_count | 数量 | int | false |
|
|
odd_unit | 单位 | nvarchar(50) | true |
|
|
补充说明 |
|
约束条件 : 是否是主键,是否唯一 等等
4.14 Product(商品表)
Product | 商品表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
prod_id | 商品编号(自动增长1,1) | bigint | false |
| 主键 |
prod_name | 商品名称 | nvarchar(200) | false |
|
|
prod_type | 商品类型 | nvarchar(100) | false |
|
|
prod_batch | 批号 | nvarchar(100) | true |
|
|
prod_unit | 单位 | nvarchar(50) | true |
|
|
prod_price | 价格 | money | true |
|
|
prod_memo | 备注 | nvarchar(200) | true |
|
|
补充说明 |
|
约束条件 : 是否是主键,是否唯一 等等
4.15 Storage(仓库表)
Storage | 仓库表 | ||||
字段名 | 字段描述 | 数据类型(精度) | 空/非空 | 默认值 | 约束条件 |
stk_id | 仓库编号自动增长1,1 | bigint | false |
| 主键 |
stk_prod_id | 商品编号 | bigint | false |
| 外键 |
stk_warehouse | 仓库名称 | nvarchar(50) | false |
|
|
stk_ware | 货位 | nvarchar(50) | false |
|
|
stk_count | 数量 | int | false |
|
|
stk_memo | 备注 | nvarchar(200) | true |
|
|
补充说明 |
|
约束条件 : 是否是主键,是否唯一 等等
5. 安全性设计
提示:提高软件系统的安全性应当从“管理”和“设计”两方面着手。这里仅考虑数据库的安全性设计。
5.1 防止用户直接操作数据库的方法
提示:用户只能用帐号登陆到应用软件,通过应用软件访问数据库,而没有其它途径操作数据库。
5.2 用户帐号密码的加密方法
提示:对用户帐号的密码进行加密处理,确保在任何地方都不会出现密码的明文。
5.3 角色与权限
提示:确定每个角色对数据库表的操作权限,如创建、检索、更新、删除等。每个角色拥有刚好能够完成任务的权限,不多也不少。在应用时再为用户分配角色,则每个用户的权限等于他所兼角色的权限之和。
角色 | 可以访问的表与列 | 操作权限 |
系统管理员 |
|
|
|
| |
|
| |
销售主管 |
| 1.编辑客户基本信息 2.管理客户的联系人。 3.管理客户的交往记录 4.查看客户的历史订单,5.客户流失预警,6.暂缓客户流失。7.确认客户流失 |
|
| |
|
| |
客户经理 |
|
|
|
| |
|
|
6. 优化
提示:分析并优化数据库的“时-空”效率,尽可能地“提高处理速度”并且“降低数据占用空间”。
(1)分析“时-空”效率的瓶颈,找出优化对象(目标),并确定优先级。
(2)当优化对象(目标)之间存在对抗时,给出折衷方案。
(3)给出优化的具体措施,例如优化数据库环境参数,对表格进行反规范化处理等。
优先级 | 优化对象(目标) | 措施 |
|
|
|
|
|
|
|
|
|
7. 数据库管理与维护说明
提示:在设计数据库的时候,及时给出管理与维护本数据库的方法,有助于将来撰写出正确完备的用户手册。