【DAO】计费系统数据库设计简单文档

************************************************************************
  ****原文:blog.csdn.net/clark_xu 徐长亮的专栏
************************************************************************

数据库的设计文档

数据库的设计文档,需要建表的sql语句。

1)  account  账务账户

id number(9) PK 账务账户ID

login_name varchar220not null用户自服务用户名

login_passwd varchar2(8)  not null用户自服务密码

status char(1) not null 0:开通 1:暂停被冻结 2:删除真实的数据很少删除

create_date      date not null 账务账户开通日期

pause_date       date                 账务账户被冻结日期

close_date         date                  账务账户停止删除日期

real_name         varchar2(20)    not null客户真实姓名

idcard char2(18) not null 身份证

birthdate date not null 生日

gender char(1) not null性别 f:m:

occupation varchar2(50)  职业

telephone varchar2(50) not nulll电话

email varchar2(50)   邮件

                   mailaddress varchar2(100) not null通信地址

                   zipcode char(6) not null邮政编码

                   qq vharchar2(15) qq

2)  service 业务类型基本信息及对应的资费

id number(10) pk

account_id number(9) not null FK关联account

cost_id number(4) not null FK关联cost

             host varchar2(15)    not null主机IP地址

                   os_username  varchar2(8) not null         登录主机用户名

                   os_passwd       varchar2(8) not null         登录主机密码

                   status char(1) not null业务账户状态 0:开通 1:暂停 2:删除(service状态和account状态有关系)

create_date     date not null 业务账户开通日期

pause_date       date                 业务账户被冻结日期

close_date         date                  业务账户停止删除日期

3)  cost 资费表

id number(4) PK

name varchar2(50) not null 资费名称

base_duration  number(11) 包时长(小时):包几月的时间,包多少小时。为以后的包年的扩展,一般number都取11java最大长度是10位。Interger.MAX_VALUE

base_cost number(7,2)    基费(元):相应包月的基本计费,含基本费用。

unit_cost  number(7,2)     单位费用(元/分钟)每小时的费用,不包月的

descry        varchar2(200) not null资费基本描述

cost_type char(1) not null资费类别 1:包月 2:套餐 3:计时

create_date      date not null 创建日期

4)  service_detail 所有用户在服务端的登录,登出信息

id number(11) PK

service_id number(10) FK not null关联service

client_host varchar2(15) not null 客户端IP

pid number(11) not null             进程ID

login_time date not null            登录时刻

logout_time date not null 退出时刻

duration number(20,9) not null登录时长 //不是主键唯一决定,为了统计的效率

host varchar2(15) not null 主机的IP地址

OS_username varchar2(8) not null  登录主机用户名

os_passwd varchar(8) not null         登录主机的密码

 

 

主要业务的操作:

1.  新建账务账户并开通业务账号:操作account,service

2.  已有的账务账户增加业务账号:操作service表,查询account

3.  系统采集并且记录日志信息:  操作service_detail,查询service

4.  月底对某个账务账户进行结算:查询account表,查询service表查询业务,查询service_details登录的记录,操作cost表。

5.  添加一个资费的标准:操作service

你可能感兴趣的:([2015年之前]java开发)