(转载)数据库表设计-水电费缴费系统(oracle)

水电缴费管理系统数据表设计

SQL建表脚本:

 1 --建表
 2 --管理人员表 admin
 3 create table admin(
 4        admin_id      varchar2(3) not null,
 5        admin_loginname           varchar2(8) not null,
 6        admin_password            varchar2(6) not null,
 7        admin_username            varchar2(4) not null,
 8        constraint pk_admin primary key(admin_id)
 9 );
10 comment on column admin.admin_id is ‘管理员编号‘;
11 comment on column admin.admin_loginname is ‘管理员登录用户名‘;
12 comment on column admin.admin_password is ‘管理员登录密码‘;
13 comment on column admin.admin_username is ‘管理员姓名‘;
14 --用户基本信息表  user
15 create table users(
16        user_id    varchar2(10) not null,
17        user_loginname           varchar2(8) not null,
18        user_password            varchar2(6) not null,
19        user_username            varchar2(4) not null,
20        user_address             varchar2(20) not null,
21        user_phone               number(11) not null,
22        constraint pk_users primary key(user_id)
23 );
24 comment on column users.user_id is ‘用户编号‘;
25 comment on column users.user_loginname is ‘用户登录名‘;
26 comment on column users.user_password is ‘用户登录密码‘;
27 comment on column users.user_username is ‘用户姓名‘;
28 comment on column users.user_address is ‘用户地址‘;
29 comment on column users.user_phone is ‘用户电话‘;
30 --水表 water
31 create table water(
32        water_id   varchar2(10) not null,
33        userid     varchar2(10) not null,
34        water_count             number(3,2) not null,
35        water_time              date not null,
36        water_status            number(1) not null,
37        water_priceid           varchar2(10) not null,
38        water_beforecount       number(3,2) not null,
39        constraint pk_water primary key(water_id)
40 );
41 comment on column water.water_id is ‘水表编号‘;
42 comment on column water.userid is ‘用户编号‘;
43 comment on column water.water_count is ‘水表跑数‘;
44 comment on column water.water_time is ‘水表时间‘;
45 comment on column water.water_status is ‘水费缴费状态‘;
46 comment on column water.water_priceid is ‘水费价格编号‘;
47 comment on column water.water_beforecount is ‘上月水表跑数‘;
48 --水表 power
49 create table power(
50        power_id   varchar2(10) not null,
51        userid     varchar2(10) not null,
52        power_count             number(3,2) not null,
53        power_time              date not null,
54        power_status            number(1) not null,
55        power_priceid           varchar2(10) not null,
56        power_beforecount       number(3,2) not null,
57        constraint pk_power primary key(power_id)
58 );
59 comment on column power.power_id is ‘电表编号‘;
60 comment on column water.userid is ‘用户编号‘;
61 comment on column power.power_count is ‘电表跑数‘;
62 comment on column power.power_time is ‘电表时间‘;
63 comment on column power.power_status is ‘电费缴费状态‘;
64 comment on column power.power_priceid is ‘电费价格编号‘;
65 comment on column power.power_beforecount is ‘上月电表跑数‘;
66 --价格表 money
67 create table price(
68        price_id   varchar2(10) not null,
69        price_time date not null,
70        isactive   number(1) not null,
71        waterprice number(2,2) not null,
72        powerprice number(2,2) not null,
73        constraint pk_price primary key(price_id)
74 );
75 comment on column price.price_id is ‘价格编号‘;
76 comment on column price.price_time is ‘价格日期‘;
77 comment on column price.isactive is ‘价格状态‘;
78 comment on column price.waterprice is ‘水费价格‘;
79 comment on column price.powerprice is ‘电费价格‘;

管理员表:

用户表:

水费表:

电费表:

价格表:

时间: 2024-10-05 05:06:06

(转载)数据库表设计-水电费缴费系统(oracle)的相关文章

Oracle数据库表设计时的注意事项

表是Oracle数据库中最基本的对象之一.万丈高楼从平地起,这个基础对象对于数据库来说,非常重要.因为其设计是否合理,直接跟数据库的性能相关.从Oracle数据库菜鸟到数据库专家这个过程中,在表设计与管理上,或多或少,会犯一些错误.笔者今天就谈谈自己在这方面的经验与教训,或许能够给大家一些警示作用. 表是Oracle数据库中最基本的对象之一.万丈高楼从平地起,这个基础对象对于数据库来说,非常重要.因为其设计是否合理,直接跟数据库的性能相关.从Oracle数据库菜鸟到数据库专家这个过程中,在表设计

数据库设计:用户登录系统数据库表设计

用户登录系统数据库表设计 最近看了看公司后台用户登录系统的设计, 比较混乱, 主要还是因为URS和Oauth以及URS第三方这三个登录形式各不相同导致的. 下面着重介绍一下涉及到第三方登录中需要注意的问题 在一个新项目中, 如果是要建立自己的登录体系的话, 那么直接创建一个Users表,包含username和password两列,这样,就可以实现登录了: id | username | password | name等其他字段 ----+----------+----------+-------

数据库表设计的很灵活,是否做SQL语句也那么容易呢

由于项目需要,我们把一些不经常变的常数通过数据字段配置好,系统初始化的时候通过数据库字段去更新数据.下面就实例说明. 我有一张这样的表 ,你会发现meterkindid和measureid是代码,只有通过数据配置的数据字典才能解析出我们要的值,下面为数据字典表结构 ,这样设计就很灵活,FieldID为列名称,ID为上面表的值,value为解析值,也就是代码对应的名称,下面再发一张字典的数据图 MK001和MK002对应数据字典的水表跟电表,MS001和MS002对应数据字典的计量单位分别为吨还是

20170105数据库表设计知识点

20170105数据库表设计知识点 ------指导老师    星哥 1.PHP(MYSQL)擅长单表操作,不要做过多无谓的连接查询 2.表字段名不要使用大驼峰命名方式,最好采用下划线,命名要和团队习惯一致,通俗易懂. 3.表级.字段都要有注释 4.MyISAM 适合于一些需要大量查询的应用,但其对于有大量写操作并不是很好.甚至你只是需要update一个字段,整个表都会被锁起来,而别的进程,就算是读进程都无法操作直到读操作完成.另外,MyISAM 对于 SELECT COUNT(*) 这类的计算

无限树形结构的数据库表设计

前言: 无限树形结构的数据库表设计的是否合理,直接影响到UI层是否方便根据树来查询关联的数据. 1.表字段: F_BtEd2kTypeId int Unchecked F_Name nvarchar(50) Checked F_ParentTypeId nvarchar(50) Checked F_Code nvarchar(50) Checked F_RecordStatus int Checked 2.表数据: 3.说明: 如2所示, 1)如果上表的数据关联上了一张表A,通过BtEd2kTy

数据库表设计三范式

数据库设计三范式(nomorlization) 1NF:原子性,即每个字段都不可以在分割了. 2NF:唯一性,即每个表只描述一个实体,这个实体要有主键,非主关键字要完全依赖主键,正因为说是完全依赖,是因为在组合主键存在的情况下,非主关键字不能只依赖部分关键字. 3NF:一个表中不能包含其他表中已经存在的非主键字段信息,也就是说只可以包含其他表的主键信息,这样就是主外键,通过主外键就可以进行表之间的连接(join),3NF主要是减少数据冗余. 数据库表设计三范式,布布扣,bubuko.com

Innodb IO优化 — 数据库表设计 转

数据库表设计这块学问比较多,我这里单从互联网角度出发同时结合Innodb的特性给出一些设计方法供大家参考.本文构建大概分两分部分:Innodb的特性及设计中如何利用这种特性. Innodb特性: Innodb是索引聚集表, 存储结构是BTREE Innodb的表的数据存储是有顺序的,默认是以主建排序,主建即是数据本身,不单独存放. 如果没有主建,Innodb以第一个唯一索引排序,如果连唯一索引也没,Innodb内部会产生一个6字节的字段排序(这个也是性能杀手,所以对这块如果不想花太多时间去想这个

用户权限管理数据库表设计思想

用户权限管理数据库表设计思想 表:(1)用户表(user) (2)权限表(power) (3)部门表(group) (4)角色表(role) (5)用户部门角色表(user_group_role)存放用户id,部门id,角色id (6)权限部门角色表(power_group_role)存放权限id,部门id,角色id 设计理念: a用户可以(绑定)属于m部门n角色   z权限可以(绑定)属于m部门n角色 由此:a就拥有z权限 设计扩展:一个用户可以同时属于多个部门下的多个角色 每个部门下的每个角

优化Oracle数据库表设计

绝大多数的Oracle数据库性能问题都是由于数据库设计不合理造成的,只有少部分问题根植于Database Buffer.Share Pool.Redo Log Buffer等内存模块配置不合理,I/O争用,CPU争用等DBA职责范围上.所以除非是面对一个业已完成不可变更的系统,否则我们不应过多地将关注点投向内存.I/O.CPU等性能调整项目上,而应关注数据库表本身的设计是否合理,库表设计的合理性才是程序性能的真正执牛耳者.合理的数据库设计需要考虑以下的方面: ·业务数据以何种方式表达.如一个员工