电费管理系统E-R图及数据库表设计
基于E-R模型的配电网数据库管理系统优化设计
![基于E-R模型的配电网数据库管理系统优化设计](https://img.taocdn.com/s3/m/2a17bded52d380eb63946d78.png)
199当前配电网络中用户节点繁多,存在大量数据,相互间的关联错综复杂并且变换频繁,因而数据库设计是研究者科研的重要课题。
传统的设计方法分为两类,一类是在输电网络数据库中依据层级构造建模,搭建网状节点模型,但忽视了特殊配电网络构造,并存在后期维护工作繁琐的弊端;另一类则将线路转换为杆塔方式搭建,被设置变配和开闭装备,该方法操作简单,但数据库不易更新,灵活度不高。
1 配电网络的E-R模型搭建1.1 E-R模型下的配电网络建模(1)配电网络的实体。
E-R模型由实体,连接和属性构成。
实体作为数据目标,即应用过程中的客观事物,如配电网中的变压装置,输电线路等部分。
而相同类别的实体则构成实体类,如配电网络中的变压装置行程配电变压实体部分。
(2)配电网络的连接。
由于实体之间并不孤立并存在相互关联,而配电网络的连接代表了一个和多个实体间连接。
如配电变压装置和用电负荷间的电能供应关联。
(3)配电网络的属性。
配电网络的属性能够表述实体的特点,如配电变压装置的名字,编码,容量等相关属性数据[1]。
1.2 配电网络中的杆塔和开关在配电网络体系中,每条配电线路均包含多个杆塔和开关,并包含几十个到几百个分支线路,各部分线路采用配电变压装置的模式给使用者供电,信息量巨大,因而构建科学的信息模型对设计数据库有很大帮助。
1.3 变阻抗支路设计在整个配电网络中,线路间经过开关完成互联,而开关是物理存在的实体并不从属于相关线路。
在构建配电数据集合时,为获取线路间的关联,需串接变阻抗支路,完成上游电源部分和下游各节点间通讯。
2 E-R模型的配电网数据库设计2.1 E-R模型下配电网络数据库组成(1)线路数据库。
线路数据库基准数据组成包含信息标识,线路表述,衔接变电装置,电压层级部分。
(2)分线路数据库。
分线路数据库线路标定,线段标定,供电部分标定,并给出线路表述,线段种类,杆塔数目,阻抗和电压等级等部分。
(3)配电变压装置数据库。
配电变压装置数据集合包含名字,编码,种类,容量,供电线路标定,衔接杆编码等部分。
数据库E-R图
![数据库E-R图](https://img.taocdn.com/s3/m/016803ed998fcc22bcd10d54.png)
基本任务
消除不必要的冗余,设计生成基本E-R图
分E-R图
合并 初步E-R图 可能存在冗余的数据 和冗余的实体间联系 消除不必要的冗余
基本E-R图
1.冗余 消除不必要的冗余后的初步E-R图称为基本E-R图。 分析法消除冗余实例:
(1)例,教师工资单中包括该教师的基本工资、各种 补贴、应扣除的房租水电费以及实发工资。由于实发 工资可以由前面各项推算出来,因此可以去掉,在需 要查询实发工资时根据基本工资、各种补贴、应扣除 的房租水电费数据临时生成。 (2) 教室实体与班级实体的上课联系可以由教室与课程 之间的开设联系、课程与学生之间的选修联系、学生与 班级之间的组成联系三者推导出来,因此属于冗余联系, 可以消去。
3)M:N的联系,即多对多的联系 A中任意实体至少有一个实体对应B中的多个实体, 反之B中的任意实体至少有一个实体对应A中的多 个实体。 “学生”(A)是一种实体,“课程”(B)也是一种 实体。这两种实体之间存在一种联系,设这种联系 命名为“选课”,表示的是哪一个学生修了哪些门 课程。这个联系是M:N的,也就是说,一个学生 可以修多门课程,一门课程可以有多个学生来修, 但一个学生不一定修所有的课程,一门课程也不一 定被全部学生所选修。在E-R图中,这两种实体间 的联系可以表示如下图
1
拥有 成绩 m m 学生 选修 n
在E-R图中概念及术语 (1)实体与实体类型 实体:可以相互区别客观事物和概念的统一抽象。 是任何一种我们所关心的“事物”,可以指人,也 可以指物,可以是实际的东西,也可以是抽象的、 概念性的东西。 例 学生、回扣、医疗等。实体分为两级,一级为 “个体”,如“张三”、“国防科技大学”等;另 一级为“总体”,泛指某一类个体组成的集合,如 人泛指“张三”、 “李四”等。实体类型:将具 有共性的一类实体抽象为实体类型。在E-R图中, 实体这种基本成份用方框来表示。
数据库E-R图范例
![数据库E-R图范例](https://img.taocdn.com/s3/m/bb9fa366ddccda38376bafc6.png)
选课(学号,课号,成绩) 教课(教师号,课程号)
课号
课程名
选修
厂名
厂长
地址
工厂(厂名,厂长,地址)
工厂 m 工厂-- 产品-- 用户 n 产品 n 用户
产品(编号,型号,单价)
ห้องสมุดไป่ตู้
用户(姓名,地址,电话)
工厂-产品-用户(厂名,编号,姓名)
编号
型号
单价
姓名
地址
电话
单位名
电话
单位
1 管理 n 学生
出版社编号 出版社名称
地址
联系方式
出版社(出版社编号,出版社名,地址,联系方式) 出版社 作者(作者编号,姓名,出生日期,电话,职业) 出版(出版社编号,作者编号,出书数量)
n 出版
m 作者
出书数量
作者编号
姓名
出生日期
电话
职业
读者号
姓名
性别
年龄
地址 读者(读者号,姓名,性别,年龄,地址)
读者 1 借书 n 书
书(书号,书名,作者,出版社) 借书(读者号,书号,借出日期,应还日期)
借出日期 应还日期
书号
书名
作者
出版社
学号 姓名
性别
年龄
教师号 姓名
性别 教研组
学生
n 成绩 选课
n
教学
m
教师
n 教课
学生(学号,姓名,性别,年龄) 教师(教师号,姓名,性别,教研组) 课程(课号,课程名,选修)
教学(学号,教师号)
1
开课
n
m
选修
n
课程
学号
姓名
性别
年龄
课程号
数据库课程设计电力公司收费系统
![数据库课程设计电力公司收费系统](https://img.taocdn.com/s3/m/3a1e6490a300a6c30d229f07.png)
数据库课程设计电力公司收费系统数据库课程设计题目某电力公司收费管理信息系统专业班级姓名学号完成日期 -12-18一、课程实验目的1.经过课程设计,使学生进一步巩固所学的知识,考查学生对数据库理论及知识的理解能力和综合运用能力;2.培养学生自主学习、独立思考的能力,学会查找资料并善于分析资料的能力;3.培养学生独立设计、独立调试程序的能力;4.培养学生初步的软件设计能力,形成良好的编程风格二、课程实验要求(28)某电力公司收费管理信息系统1.实现客户信息、用电类型(类别号、类别名、电价)及业务员管理;2.实现客户用电信息管理(客户号、月份、用电类别号、用电度数);3.实现客户费用管理(客户号、月份、费用、收费标志),收费标志的默认值为‘未收’;4.实现收费登记(客户、月份、应收费用、实收费用、业务员),并自动修改收费标志(用触发器实现);5.创立触发器,实现收费时自动更加应收费用和实收费用,计算本次结余,然后修改客户信息表中的结余金额;6.创立存储过程统计指定月份应收费用和实收费用;7.创立存储过程查询指定月份未交费的用户信息,以便崔费;8.创立规则使得月份符合格式“××××年××月”,并邦定到表中相应字段;9.建立表间关系。
三、课程设计要求1.在对数据库理论及知识理解的基础上;重点是针对具体的实际问题选择并设计合适的数据库表加以应用,并在此基础上完成相关的算法与程序;2.给出系统的概要设计、详细设计;3.完成数据流程图,E-R关系图,数据库表、程序流程图、功能模块图的设计、对功能编程加以实现;4.设计必要的视图、触发器、存储过程;5.使用相关的编程工具(C#.NET)和ORACLE编写代码实现设计的数据库系统;6.完成规范化的课程设计报告的编写;7.每个同学完成一个题目,题目由老师安排。
四、实验环境VS ,SQLsever五、课程设计过程1. 根据题目写出关系模型如下:①客户(客户号、客户名、地址、联系方式)②用电类型(类别号、编号、类别名、电价)③员工(员工号、姓名、性别、联系方式)④用电信息(客户号、月份、类别号、用电度数)⑤费用管理(客户号、月份、费用、收费标志)⑥收费登记(客户号、月份、应收费用、实收费用、员工号)⑦结余登记(客户号、月份、应收费用、实收费用、结余费用)2、根据关系模型绘制出E-R模型为:3、创立表1.客户表Create table 客户(客户号 char(5) PRIMARY KEY,客户名 char(4),地址 varchar(50),联系方式 char(10));插入数据:Insert into 客户 values('00001','张三','市南区','0000000'); Insert into 客户 values('00002','李四','黄岛区','0000002'); Insert into 客户 values('00003','王五','崂山区','0000003'); Insert into 客户 values('00004','赵兰','城阳区','0000004'); Insert into 客户 values('00005','李青','黄岛区','0000005'); Insert into 客户 values('00006','张倩','市南区','0000001');2.用电类型表Create table 用电类型(类别号 char(10) PRIMARY KEY,类别名 varchar(50),电价 money);插入数据:Insert into 用电类型 values('ABC','家庭','1.00');Insert into 用电类型 values('ABD','政府','2.00');Insert into 用电类型 values('ABE','工厂','1.50'); Insert into 用电类型 values('ABF','学校','2.50'); Insert into 用电类型 values('ABG','医院','0.50');3.员工表Create table 员工(员工号 char(5) PRIMARY KEY,姓名 char(20),性别 char(10),联系方式 char(20));插入数据:Insert into 员工 values('12345','李丽','女','1230000'); Insert into 员工 values('12346','王华','男','1230002'); Insert into 员工 values('12347','张悦','女','1230003');4.用电信息表Create table 用电信息(客户号 char(5) ,类别号 char(10) ,月份 date ,用电度数 char(8),primary key (客户号,类别号,月份),foreign key (客户号) references 客户(客户号),foreign key (类别号) references 用电类型(类别号));Insert into 用电信息 values('00001','ABC',' -12-01','100'); Insert into 用电信息 values('00001','ABE',' -12-01','220'); Insert into 用电信息 values('00002','ABC',' -12-01','110'); Insert into 用电信息 values('00003','ABE',' -11-01','125'); Insert into 用电信息 values('00003','ABE',' -12-01','105'); Insert into 用电信息 values('00004','ABC',' -12-01','200'); Insert into 用电信息 values('00005','ABC',' -12-01','102'); Insert into 用电信息 values('00006','ABC',' -12-01','100');5.费用管理Create table 费用管理(客户号 char(5) ,月份 date ,费用 money,收费标志 varchar(50),PRIMARY KEY (客户号,月份),foreign key (客户号) references 客户(客户号)6.收费登记Create table 收费登记(客户号 char(5),月份 date ,应收费用 money,实收费用 money,员工号 char(5),PRIMARY KEY (客户号,月份),foreign key (员工号) references 员工(员工号) );7.结余登记Create table 结余登记(客户号 char(5),月份 date ,应收费用 money,实收费用 money,结余费用 money,PRIMARY KEY (客户号,月份)4.创立触发器触发器1:计算费用create trigger change_trigger1on 用电信息for insertasinsertinto 费用管理 (客户号,月份,费用)SELECT inserted.客户号,inserted.月份,inserted.用电度数*(select 电价from 用电类型,inserted where 用电类型.类别号=inserted.类别号)FROM inserted;触发器2:未收标志create trigger change_trigger on 费用管理for insertasupdate 费用管理 set 收费标志='未收';触发器3:已收标志create trigger change_trigger3on 收费登记for updateasupdate 费用管理 set 收费标志='已收'from 费用管理,insertedwhere 费用管理.客户号=inserted.客户号and 费用管理.月份=inserted.月份;触发器4:结余登记create trigger change_trigger4on 收费登记for updateasinsert into 结余登记select inserted.客户号, inserted.月份,inserted.应收费用,inserted.实收费用,inserted.实收费用-inserted.应收费用from inserted;5.建立存储存储过程1:应收费用,实收费用create procedure ch_procedure01 @month dateasbeginselect 月份,应收费用,实收费用from 收费登记where 收费登记.月份=@month endgo存储过程2:未收费create procedure ch_procedure02 @month dateasbeginselect 客户号,月份,结余费用from 结余登记where 结余登记.月份=@month order by 结余费用endgo6.表间关系六、代码实现过程1.显示窗体内的内容及表的内容private void Form5_Load(object sender, EventArgs e){string consqlserver = "Data Source=GXW-PC;Initial Catalog=liqiuyue0;Integrated Security=True";//string consqlserver = "Data Source=CHEN-PC;Initial Catalog=rl;Integrated Security=True";//定义连接数据源string sql = "select * from 用电信息 ";SqlConnection sqlcon = new SqlConnection(consqlserver);sqlcon.Open();SqlDataAdapter da = new SqlDataAdapter(sql, sqlcon);DataSet ds = new DataSet();//shengmingtry{da.Fill(ds);if (ds.Tables[0].Rows.Count > 1) //判断是否有符合条件的数据记录{//将获得数据源赋予数据库控件dataGridView1.DataSource = ds.Tables[0];}}catch (Exception ex){throw new Exception(ex.ToString());}finally{sqlcon.Close();sqlcon.Dispose();da.Dispose();}}结果如图所示:2.插入一行信息的代码private void label3_Click(object sender, EventArgs e){}private void button1_Click(object sender, EventArgs e){string consqlserver = "Data Source=GXW-PC;Initial Catalog=liqiuyue0;Integrated Security=True";// string sql = "select * from 客户 ";SqlConnection sqlcon = new SqlConnection(consqlserver);sqlcon.Open();try{// 首先判断输入信息是否完全if (textBox1.Text == ""){MessageBox.Show("请输入完整的数据信息", "信息提示", System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Warning);}else{DataSet ds = new DataSet();// 在此判断保存重复记录问题string strSqls;strSqls = string.Format("SELECT * FROM 用电信息where 客户号='" + textBox1.Text.Trim() + "'and 类别号='" + textBox2.Text.Trim() + "'and 月份='" + textBox3.Text.Trim() + "';");//定义SQL Server连接对象SqlDataAdapter da = new SqlDataAdapter(strSqls, sqlcon);da.Fill(ds);if (ds.Tables[0].Rows.Count > 1){MessageBox.Show("已经存在", "信息提示", System.Windows.Forms.MessageBoxButtons.OK,System.Windows.Forms.MessageBoxIcon.Error);}else{strSqls = "insert into 用电信息values ('" + textBox1.Text.Trim() + "','" + textBox2.Text.Trim() + "','" + textBox3.Text.Trim() + "','" + textBox4.Text.Trim() + "');";//定义SQL Server连接对象///////////////////SqlConnection sqlcon1 = new SqlConnection(consqlserver);SqlCommand cmd = new SqlCommand(strSqls, sqlcon1); try{sqlcon1.Open();cmd.ExecuteNonQuery();}catch { }finally{sqlcon1.Close();sqlcon1.Dispose();cmd.Dispose();}MessageBox.Show("保存成功", "信息提示", System.Windows.Forms.MessageBoxButtons.OK,rmation);//刷新数据string sqls = "select * from 用电信息 ";SqlDataAdapter da1 = new SqlDataAdapter(sqls, sqlcon); da1.Fill(ds);if (ds.Tables[0].Rows.Count > 1){dataGridView1.DataSource = ds.Tables[0];}}}catch { }}结果如图所示:3.修改一行信息的内容private void button2_Click(object sender, EventArgs e){string consqlserver = "Data Source=GXW-PC;Initial Catalog=liqiuyue0;Integrated Security=True";// string sql = "select * from 客户 ";SqlConnection sqlcon = new SqlConnection(consqlserver);sqlcon.Open();{if (textBox1.Text == ""){MessageBox.Show("请输入客户号,类别号,月份", "信息提示", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Warning);}else{DataSet ds = new DataSet();string strSqls = string.Format("SELECT * FROM 用电信息where 客户号='" + textBox1.Text.Trim() + "'and 类别号='" + textBox2.Text.Trim() + "'and 月份='" + textBox3.Text.Trim() + "';");// string strSqls = string.Format("SELECT * FROM 客户where 客户号='" + textBox1.Text.Trim() + "'");// string strSqls = string.Format("update teacher set tname='" + textBox2.Text.Trim() + "'where tno='" + textBox1.Text.Trim() + "'");SqlConnection con = new SqlConnection(consqlserver);SqlDataAdapter da = new SqlDataAdapter(strSqls, con);//定义SQL Server连接对象da.Fill(ds);int tnum = dataGridView1.CurrentRow.Index;//先选中某一行string oldDate = dataGridView1.Rows[tnum].Cells["月份"].Value.ToString();string oldLeibie = dataGridView1.Rows[tnum].Cells["类别号"].Value.ToString();// strSqls = string.Format("update 客户set 客户名='" + textBox2.Text.Trim() + "'where 客户号='" + textBox1.Text.Trim() + "'update 客户 set 地址='" + textBox3.Text.Trim() + "'where 客户号='" + textBox1.Text.Trim() + "'update 客户set 联系方式='" + textBox4.Text.Trim() + "'where 客户号='" + textBox1.Text.Trim() + ""); strSqls = string.Format("update 用电信息 set 类别号='" + textBox2.Text.Trim() + "',月份='" + textBox3.Text.Trim() + "',用电度数='" + textBox4.Text.Trim() + "'where 客户号='" + textBox1.Text.Trim() + "'and 类别号='" + oldLeibie + "'and 月份='" + oldDate + "';");SqlConnection cons = new SqlConnection(consqlserver);SqlCommand cmd = new SqlCommand(strSqls, cons);try{cons.Open();cmd.ExecuteNonQuery();}catch { }finally{cons.Close();cons.Dispose();cmd.Dispose();}MessageBox.Show("修改成功", "信息提示", System.Windows.Forms.MessageBoxButtons.OK,rmation);//刷新数据string sqls = "select * from 用电信息";SqlDataAdapter da1 = new SqlDataAdapter(sqls, con);DataSet dss = new DataSet();da1.Fill(dss);if (dss.Tables[0].Rows.Count > 1){dataGridView1.DataSource = dss.Tables[0];}}catch { }}运行结果如图所示:(注应该先选中,在修改,目的改主码)5.删除一行信息的内容private void button3_Click(object sender, EventArgs e){string consqlserver = "Data Source=GXW-PC;Initial Catalog=liqiuyue0;Integrated Security=True";SqlConnection sqlcon = new SqlConnection(consqlserver);sqlcon.Open();tryif (textBox1.Text == ""){MessageBox.Show("请选择或输入要删除的信息", "信息提示", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Warning);}else{DataSet ds = new DataSet();// 判断要删除的数据信息是否存在string strSqls;strSqls = string.Format("SELECT * FROM 用电信息where 客户号='" + textBox1.Text.Trim() + "'and 类别号='" + textBox2.Text.Trim() + "'and 月份='" + textBox3.Text.Trim() + "';");// strSqls = string.Format("SELECT * FROM 客户 where 客户号='" + textBox1.Text.Trim() + "'");//定义SQL Server连接对象SqlConnection con = new SqlConnection(consqlserver);SqlDataAdapter da = new SqlDataAdapter(strSqls, con);da.Fill(ds);if (ds.Tables[0].Rows.Count > 0){if (MessageBox.Show("确认要删除吗?", "信息提示", System.Windows.Forms.MessageBoxButtons.YesNo,System.Windows.Forms.MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes){//定义删除数据信息的SQL语句strSqls = string.Format("delete from 用电信息where 客户号='" + textBox1.Text.Trim() + "'and 类别号='" + textBox2.Text.Trim() + "'and 月份='" + textBox3.Text.Trim() + "';");//定义SQL Server连接对象SqlConnection cons = new SqlConnection(consqlserver);SqlCommand cmd = new SqlCommand(strSqls, cons); try{cons.Open();cmd.ExecuteNonQuery();}catch { }finally{cons.Close();cons.Dispose();cmd.Dispose();}MessageBox.Show("信息删除成功", "信息提示", System.Windows.Forms.MessageBoxButtons.OK,rmation);//刷新数据string sqls = "select * from 用电信息 ";SqlDataAdapter da1 = new SqlDataAdapter(sqls, con); DataSet dss = new DataSet();da1.Fill(dss);if (dss.Tables[0].Rows.Count > 0){dataGridView1.DataSource = dss.Tables[0];}}}}}catch { }}}}七、运行结果展示:触发器实现自动修改和计算:每当添加一个新值,收费标志自动改成未收存储过程的实现,实现存储指定日期的应收费用和实收费用八、总结与心得体会经过几月的课程设计,还是简单地完成了“某电力公司收费管理信息系统”题目的相关要求。
数据库表设计—水电费缴费系统
![数据库表设计—水电费缴费系统](https://img.taocdn.com/s3/m/28baa13d2bf90242a8956bec0975f46527d3a794.png)
数据库表设计—⽔电费缴费系统⽔电缴费管理系统数据表设计SQL建表脚本:1--建表2--管理⼈员表 admin3create 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,8constraint 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--⽤户基本信息表 user15create table users(16user_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,22constraint pk_users primary key(user_id)23 );24 comment on column er_id is'⽤户编号';25 comment on column er_loginname is'⽤户登录名';26 comment on column er_password is'⽤户登录密码';27 comment on column er_username is'⽤户姓名';28 comment on column er_address is'⽤户地址';29 comment on column er_phone is'⽤户电话';30--⽔表 water31create 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,39constraint pk_water primary key(water_id)40 );41 comment on column water.water_id is'⽔表编号';42 comment on column erid 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--⽔表 power49create 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,57constraint pk_power primary key(power_id)58 );59 comment on column power.power_id is'电表编号';60 comment on column erid 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--价格表 money67create 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,73constraint 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'电费价格';管理员表:⽤户表:⽔费表:电费表:价格表:。
学校水电交费系统E
![学校水电交费系统E](https://img.taocdn.com/s3/m/0b87550679563c1ec5da714c.png)
学校水电交费系统E —R 图:1 NNN 1 N转化的关系模式如下:学生关系模式(智能卡号,姓名,学号,宿舍号) 教师关系模式(智能卡号,姓名,门牌号) 水关系模式(水单价,水类型) 电关系模式(电单价,电类型)水费关系模式(实用吨数,智能卡号,水单价,应交费用,上月水表数,本月水表数) 电费关系模式(实用电数,智能卡号,电单价,应交费用,上月电表数,本月电表数)建立水电缴费数据库SDJF数据库中新建6张表格(每个对象对应一张)学生 水费教师 电 电费 智能卡号姓名 门牌号实用吨数 本月水表读数 上月水表读数 上月电表数姓名 实用电数 本月电表数 智能卡号 宿舍号 学号 水类型 水单价 电单价 电类型 应交费用 应交费用水学生表student的结构列名描述数据类型允许空值说明card 智能卡号Char(12) No 主键S_name 姓名Char(8) yesS_no 学号Char(8) yesS_room 宿舍号Char(4)no教师表teacher的结构列名描述数据类型允许空值说明card 智能卡号Char(12)No 主键T_name 姓名Char(8)YesT_room 门牌号Char(4)no水表water的结构列名描述数据类型允许空值说明W_price 水单价Char(6)No 主键W_type 用水类型Char(4)yes电表electric的结构列名描述数据类型允许空值说明E_price 电单价Char(6)No 主键E_type 用电类型Char(4)yes水费表Watercost的结构列名描述数据类型允许空值说明Weight 实用吨数Char(10)No 主键Card 智能卡号Char(12)No 主键(同时是外键)W_price 水单价Char(6)No 主键(同时是外键)Cost 应缴费用CHAR(8) NoAmonth 上月水表数Char(7)NoPmonth 本月水表数Char(7) no水费表electriccost的结构列名描述数据类型允许空值说明degree 实用度数Char(10)No 主键Card 智能卡号Char(12)No 主键(同时是外键)E_price 电单价Char(6)No 主键(同时是外键)Cost 应缴费用CHAR(8) NoAmonth 上月电表数Char(7)NoPmonth 本月电表数Char(7) no。
数据库设计(一)E-R图
![数据库设计(一)E-R图](https://img.taocdn.com/s3/m/46ea344d68eae009581b6bd97f1922791688bea0.png)
数据库设计(⼀)E-R图数据库设计定义: 指的是将应⽤中涉及的数据实体及这些数据实体之间的关系,进⾏规划和结构化的过程。
影响数据库系统效率的因素:数据库中创建的数据结构种类,以及在数据实体之间建⽴的关系好的设计:效率⾼,便于进⼀步扩展,使应⽤程序的开发变得容易糟糕的设计:效率低下,更新和检索数据时会出现许多问题。
⼀、设计的步骤:⼀般在项⽬开发需要经过:需求分析、概要设计、详细设计、代码编写、运⾏测试和部署上线这⼏个阶段,⽽数据设计在这⼏个阶段主要做的事,如下:(当然上线后有时也会出现改需求,动代码动数据库)//数据库设计时需要注意的需求分析阶段:分析客户业务和数据处理需求概要设计阶段:绘制数据库的E-R图,⽤于在项⽬团队内部、设计⼈员和客户之间的沟通,确认需求信息的正确性和完整性。
详细设计阶段:将E-R 图转换为多张表,进⾏逻辑设计,确认各表的主外键,并应⽤数据库设计的三⼤范式进⾏审核。
经项⽬开会讨论确定后,根据项⽬的技术实现、团队开发能⼒进⾏项⽬的成本预算,选择具体的数据库进⾏物理实现,之后就是开发应⽤程序注意:在需求分析阶段的重点是调查、收集并分析客户业务的数据需求、处理需求、安全性与完整性需求。
常⽤的需求调研⽅法:在客户的公司跟班实习、组织召开调查会、邀请专⼈介绍、设计调查表并请⽤户填写和查阅与业务相关的数据记录等。
常⽤的需求分析⽅法:调查客户的公司组织情况、各部门的业务需求情况、协助客户分析系统的各种业务需求和确定新系统的边界。
//在进⾏数据库系统分析时可参考的基本步骤1、收集信息:创建数据库之前,必须充分理解数据库需要完成的任务和功能,了解数据库需要存储哪些数据、实现哪些功能2、标识实体:收集信息后,标识数据库要管理的关键对象或实体。
(实体⼀般是名词,⼀个实体只描述⼀件事情,不能出现含义相同的实体,⽽且实体可以是有形的事物(如⼈或产品),也可以是⽆形的事物(如部门,时间))3、标识每个实体需要存储的详细信息:将数据库中的主要实体标⽰为表的候选实体以后,就要标识每个实体存储的详细信息,也称为该实体的属性,这些属性将组成表中列。
数据库设计 - C2 - E-R图和表.pptx
![数据库设计 - C2 - E-R图和表.pptx](https://img.taocdn.com/s3/m/8776d4f5f61fb7360b4c65b4.png)
绘制E-R图 • E-R(Entity-Relationship)实体关系图
符合 含义 实体,一般是名词
属性,一般是名词
关系,一般是动词
概念模型 • 联系分为:一对一(1:1)、一对多(1:n)、多对 多(m:n)
【例1 】两个实体集之间的一对一的联系的绘制方法。 假设某学院有若干个系,每个系只有一个主任。则 主任和系之间是一对一的关系。 主任和系的属性分别如下: 主任——编号,姓名,年龄,学历; 系——系编号,系名 主任和系之间是一个管理关系
• 需求分析阶段:分析客户的业务和数据处理需求; • 概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完 整; • 详细设计阶段:将E-R图转换为多张表,进行逻辑设计,并应用数据 库设计的三大范式进行审核; • 代码编写阶段:选择具体数据库进行物理实现,并编写 代码实现前端应用; • 软件测试阶段:…… • 安装部署:……
BuyerID Country City
1 1 4 2 … 中国 中国 日本 美国 … 北京 北京 东京 纽约 …
• 第一范式的目标是确保每列的原子性
• 如果每列都是不可再分的最小数据单元(也称为最小的原 子单元),则满足第一范式(1NF)
第二范式 (2nd NF)
Orders
字 段 例 子 Orders 字 段 例 子 订单编号 001 订购日期 2000-2-3 Products 字 段 例 子
数据库系统分析的基本步骤-标识对象间关系2 • 标识对象之间的关系(Relationship)
• 跟贴和主贴有主从关系:我们需要在跟贴对象中表明 它是谁的跟贴; • 版块和用户有关系:从用户对象中可以根据版块对象 查出对应的版主用户的情况; • 主贴和版块有主从关系:需要表明发贴是属于哪个版 块的; • 跟贴和版块有主从关系:需要表明跟贴是属于哪个版 块的;
例子 E-R图及数据库设计 精品
![例子 E-R图及数据库设计 精品](https://img.taocdn.com/s3/m/c12a03ddaa00b52acec7ca05.png)
2017年9月17日星期日
E-R图
7/23
例2
E-R图
借书证号 姓名 单位
借书人
借书日期 出版社
出版数量 出版社名 电报编号
书号
书名
数量
位置
出版日期
邮编
地址
电话
2017年9月17日星期日
E-R图
8/23
例2
转换得到的关系模式
借书人( 借书证号 , 姓名 , 单位 ) 图书( 书号 , 书名 , 数量 , 位置 ) 出版社( 出版社名 , 电报编号 , 电话 , 邮编 , 地址 ) 借阅( 借书证号,书号 , 借书日期 , 还书日期 )
入住(病房号 , 床位号 ,病历号 , 住院日期) 诊治(病历号 , 工作证号 , 诊治日期) 组成(病房号 , 床位号 , 科名) 从属(科名 , 工作证号)
2017年9月17日星期日
E-R图
5/23
例 2:一个图书管理数据库要求提供下述服务
可查询书库中现有图书的品种、数量和存放位置。所有
各类图书都由书号惟一标识
品,每种商品也可存放在多个商店销售,每个商店销售的 每一种商品用月销售量描述;商店与职工之间存在“聘用” 联系,每个商店有许多职工,每个职工只能在一个商店工 作,商店聘用职工有聘期和月薪
2017年9月17日星期日
E-R图
20/23
例5
解:
实体 :商店、商品、职工 联系 : 商店与商品间存在“销售”联系,m : n 商店与职工间存在“聘用”联系,1 : n 实体属性 : 商店 :商店号、商店名、地址 商品 :商品号、商品名、规格、单价 职工 :职工号、姓名、性别、业绩 联系属性 : 销售 :月销售量 聘用 :聘期、月薪
电费管理系统__课程设计报告
![电费管理系统__课程设计报告](https://img.taocdn.com/s3/m/0bef50360912a21614792996.png)
专业班级:计科10102班学号:************姓名:********指导教师: ********一课程设计的目的和意义《C++与面向对象程序设计》是计算机专业的一门专业基础课,主要内容是介绍C++语言中的数据类型,运算,语句结构及其程序设计的基本方法。
C++是当今最流行的高级程序设计语言之一,应用十分广泛。
它也是一门复杂的语言,与C语言兼容,既支持结构化的程序设计方法,也支持面向对象的程序设计方法。
《C++课程设计》是在学生学习完上述课程以后进行的设计性试验课程,面向对象的思想只有通过具体的程序才能真正掌握,故在我们学习完《C++与面向对象程序设计》课程后,开设C++课程设计实验课程。
目的是使学生能够更好地掌握C++课程设计语言,更深地理解面向对象程序设计的基本概念与方法,要求我们达到熟练掌握C++语言的基本知识和技能;基本掌握面向对象程序设计的思想和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,提高动手编程解决实际问题的能力,并为后续专业课程的学习奠定程序设计基础。
通过做课程实验,我们应能加深对讲授内容的理解,积累经验,学会独立上机调试程序;并且逐步达到综合运用封装,继承和多态等C++难点知识,真正掌握C++语言的精华,从而熟练应用C++程序设计语言。
本次课程设计要求使用C++编译有关链表的程序。
完成我们所选的课题。
我们小组选的课题是电费管理系统。
我们通过链表完成对用户基本信息的一般性管理工作:用户及用户基本信息的增加、修改和删除和对用户用电情况与显示用户所缴电费情况的记录等功能。
在我的链表中是对用户的缴费情况记录的一个链表,要求将用户的基本信息、用电情况、所缴电费及电费余额以数据文件的形式存储,所有的用户基本情况均以文件操作的方式进行。
在查找时,以记录的“用户姓名”或“身份证”为关键字进行查找。
但由于我们知识的有限性,我们只能对信息进行简单的处理,希望我们能在以后的学习中进一步改善。
数据库课程设计dfd图e-r图
![数据库课程设计dfd图e-r图](https://img.taocdn.com/s3/m/aa516626aaea998fcc220e94.png)
char
50
是
结账方式
char
20
是
列名
数据类型
长度
允许空
主键
商品编号
char
20
否
是
商品名称
char
20
是
数量
int
4
否
仓库
char
20
库存表
列名
数据类型
长度
允许空
主键
验收编号
char
20
否
是
订购编号
char
20
是
收货人
char
20
是
收货时间
datetime
8
是
验收表
char
20
是
通信地址
char
20
否
联系人
char
20
否
联系电话
char
20
否
结账方式
char
20
供货客户表
列名
数据类型
长度
允许空
主键
客户编号
char
20
否
是
客户名称
char
20
是
公司类别
char
20
是
传真
char
20
是
通信地址
char
20
否
联系人
char
20
否
联系电话
char
20
否
订购表
列名
数据类型
数据流程图
b
E-R图
商品表
列名
数据类型
长度
允许空
主键
DBMS-数据库设计与E-R模型:E-R模型、约束、E-R图、E-R扩展特性、E-R图转换。。。
![DBMS-数据库设计与E-R模型:E-R模型、约束、E-R图、E-R扩展特性、E-R图转换。。。](https://img.taocdn.com/s3/m/90c5bbabfc0a79563c1ec5da50e2524de518d047.png)
DBMS-数据库设计与E-R模型:E-R模型、约束、E-R图、E-R扩展特性、E-R图转换。
设计过程概览1. 设计阶段·最初阶段:刻画未来数据库⽤户的数据需求,产品为⽤户需求规格说明;·概念设计阶段(conceptual-design phase):(关注描述抽象数据及其联系,通常使⽤实体-联系模型)概念模式:定义数据库中表⽰的实体、实体的属性、实体之间的联系以及实体和联系上的约束。
概念设计阶段需要完成1.选择数据模型,并采⽤所选数据模型的概念将需求转化为数据库的概念模式2.指明企业的功能需求,完善概念模式:在功能需求规格说明(specification of functional requirement)中描述在数据上进⾏的各类操作/事务。
设计者检查概念模式确保功能需求满⾜、所有数据需求都满⾜且互相不冲突;·逻辑设计阶段(logical-design phase):将(通常以实体-联系模型定义)⾼层概念模式映射到数据库系统的(通常为关系数据模型的)实现数据模型上。
·物理设计阶段(physical-design phase):指明数据库的物理特征(包括⽂件组织格式和索引结构的选择)。
2. 设计选择设计数据库模式时必须避免两个主要缺陷:·冗余:重复存储信息;·不完整实体-联系模型数据库的设计主要涉及数据库模式的设计。
E-R数据模型是⼀个⼴泛⽤于数据库设计的数据模型,提供了⼀个⽅便的图形化表⽰⽅法以查看数据、联系和约束。
实体-联系(entity-relationship, E-R)模型采⽤三个基本概念:实体集、联系集、属性。
1. 实体集数据库包括⼀组实体集,每个实体集包括任意数量的相同类型的实体。
实体是在现实世界中存在并且区别于其他对象的对象。
我们通过把每个实体痛描述该实体的⼀组属性相关联来表⽰区别。
相同类型的实体的集合为实体集。
实体(entity):现实世界中可区别于所有其他对象的⼀个”事物“或”对象“。
基于SQL Server数据库的智能电费管理系统设计
![基于SQL Server数据库的智能电费管理系统设计](https://img.taocdn.com/s3/m/9b81d07bb4daa58da0114af3.png)
量分段定价,用电价格随用电量增加呈阶梯状逐级递增。
居民对于缴纳电费的方式也有了更多的需求,人们不再满足于到达指定地点缴纳电费,人们希望能用更智能、更透明的方式实现电费的缴纳。
1 需求分析智能电费管理系统主要包括两类用户:一类是城镇居民用电用户,另一类是负责管理区域用电的电网职员。
■1.1 用户对系统的要求(1)信息要求当用户的信息被系统录入之后,用户可以登录系统,查询账户信息,可以看到自己的信息,以及分管该用电区域业务员的信息。
如果用户信息有误或者信息有缺失,用户可以在系统中对相关信息进行修改。
(2)处理要求当需要交纳电费时,用户可以在系统中看到账户的余额和每月的用电量,可以在该系统上进行缴费,实现智能化的缴费。
如果账户余额不足,可以通过系统对账户进行充值。
(3)安全要求系统应对不同用户设置不同的权限,区分不同的用户,让每个用户只能看到自己的信息。
对于用户登录的口令要求一定的强度,避免出现弱口令。
同时在存储客户信息时采用密文存储而不能采用明文,防止用户的隐私遭到泄露。
系统应保持各种数据间相互联系的正确性以及相同的数据在不同记录中的一致性。
■1.2 业务人员对系统的要求(1)信息要求业务员可以查看自己所管理地区的用户信息,也可以及时查看未缴费用户的信息。
同时业务员可以观察到每月该地区的用电情况,以及用电的高峰和低谷时期,可以对用电情(3)安全要求系统应对不同的业务员建立不同的视图,该视图保存了该业务员管理的用户的信息,业务员只能查看管理的用户的信息,无权查看其它用户的信息。
业务员录入信息时应保持各种信息记录的完整性,信息记录内容不能为空。
数据库同时要对业务员的各种操作进行备份,当信息丢失时能够进行有效的信息恢复。
2 系统功能的设计和划分根据如上的需求分析,我们将本系统按照所完成的功能分成以下几部分:第一部分:用户管理部分。
第二部分:业务员管理部分■2.1 用户管理部分(1)处理用户登录;(2)处理用户忘记密码;(3)用户可以查询用电情况;(4)用户可以给账户充值;(5)用户可以缴纳电费;(6)用户可以查询缴费情况;(7)用户可以修改用户自己密码,手机号等信息。
超市管理系统(数据库设计、E-R图)
![超市管理系统(数据库设计、E-R图)](https://img.taocdn.com/s3/m/ab1427d90408763231126edb6f1aff00bed570eb.png)
深的入精贯习神彻中部和落纪选。要实委拔深锋求中机任入队,为央关用学员”特的和、工习装的别情省组中作《、标本是形、织央坚条中统准质“和市原组守例源国一和九处委则织为、》,共思条使个分关、部人遵等标 弘产想件命严规于优《做守法准 扬党行章;,禁定从良关事党规和 党地动党学进止。严作于的章制条 的方个,规习一、治风加基县、度件 优委全认。党步九党动,强准处维,。 良员面真着规明个的实牢换和级护学认 传会”学,眼确一重效记届底以党习教真 统工战习充明要“律大;入风线上章市育学 和作略习中分确掌四”决要党气。党,委、习 作条布近、展基握个纪策在充誓监员坚加全理《 风例局平五示本廉服律部学分词督领定强体论中 ;》、总中共标洁从要,署,发的导理领党武国 深《贯全全产准自”求做。关挥牢通(干想导员装共 刻中彻市会党、律的,合键机记知川部(区信班学。,产 汲国落X精人树准要重格在关党》委要二X域念子习根进党 取共实年神的立则求点党系做党的和办学)中;思党据一廉 违产五在,优行规掌员统。组宗中〔深学心认想章省步洁 纪党大全进良为定掌握”先要织旨央2一系全 关”真政,委坚自 违党0发体一风规的握“学深战,、1层列体 于提学治要办定律 法组6展党步貌范“四习〕入斗深省,讲党 在供习建深公理准 反工理题员巩和,四的个教1学堡入委系话员 全坚党设入4厅想则 面作念学中固时组个领廉育号习垒领、统。讲 体强的领个印信》 典条,习开拓代织必导洁实)贯作会市学着定党保历实会专。发念《 型例实讨展精和须干”施和彻用党委习眼理课 员证史施党题的,中(现一”论“党神引部方《习和员有领加想, 中。意的组《提国 的试X、学 制,的;导“必四案中近党条关悟强X信支 开学见性织关高共 教行二总习 度按党群要广四须个〉共事平员件严党理念部 展习等质讨于党产 训)、体讨 要照章众带大个具自的X业总先和肃章论,书 “革制、论照在性党 ,》主X要论 求“党路着坚备觉通“书锋义换,武学明记命度市宗,入全觉纪 自《要求” ,四规线问员持的知十记模务届深习确给 党先文委旨每党省悟律 觉内。 党个、教题逐”六,》三头开系范、纪刻教政支 章辈件办、个志党;处 讲政容,以 小讲学育条项(五落展列作权律把育治部 党和,公指专愿员要分 政领带党 组(系实,逐掌基X”于实“重用利握动方党 规先学室导题谈中坚条 治导X头组 每课一列践针句握本发“全两要,“委员向、进关思集理开持例 、干观严中 月”)讲活对通各条展七面学讲领明两办部”讲 学典于想中想展学》 讲,守心 底要学话动问读类件良定个从一话导确个〔署、党 系型印学、“用等 规温在政组求党,和题违好共有严做,带先2,“课 列发奋习谈学结党 矩入推0关治形 织,做“改章纪开产之治”全头合1以坚,用〈斗讨信党合内 、讲动6键纪式 一开合三,行局党”学面、格〕华党持邀好关目论念章、法 守话志改时律, 次展格严进明和人“责习贯以党2民支根请红于标不,党创规 纪愿革8刻和定 党三一确“性理五任教彻上号族部本党色在、得对规先, 律做和发保站政期 员组实步做决锻想个。育落率)优为宗校教全少照、争尊 ,合入展持得治组 集班”坚合胜,炼信必实下,三秀单旨教育市于入学优崇格党稳公出规织 中子学专持格全向和念须基党,结、,传位师资党1党系,誓定仆,矩集 学成习题问党天面党道,”础的为合主站统开敢、员讲誓列进章员词实情危,中 习员教题。小的德牢等十协我要稳美展于专中规词讲一”,践怀险带学 。到育导的康理修固重八调”局(措政德一担家开矩找话步学交中精,时头习 支联(成向、论养树要大推中实三施治,次当学展、标,强习流建神牢候, 部系以果建和,立论进奋际)全立筑主作者“有(准做化教思功,记豁固每区下;注成路心党述十“发,开面场牢题为给学国纪一、合宗育想立推共得树次 季县简要重线存的,八四有现展从,拒党”特律)找格旨实体业动产出立确 度X称突活方敬意认届为制“严把腐日、员章X色,开差党观施会。X党,和定 召“出述针畏识真三、定四局治理防活“干党X社讲展距员念方。《员在贯1开两正县,政、践中加建如个带个党想变动坚部规会道“。”案党永X彻一学面(处领策手党行、快功下讲头专等信的,守讲、X主德两党学干委远落次党一二级会看握员“四发立实党事讲题方念防组纪党学义、重支习部会是实全中做)以贯齐戒意三展业施课党开新面时线织律课系道有温部教要读的劳五体央”开上穿,尺识严、。方”“课展要的时;党底,列路品两书育讲本工动大党决学展其认,三科案。十,交中求深处始员线鼓讲全、行对记方话)作人发员定习“中真廉强实学习党三局流国,刻处终重励话体“,照作案精》方民展会,教三领的贯洁化”发系支五党研特坚内体保温树普党建五讲”学》神为法的理议2育个导马彻从党要展列部”组讨0理 情色持涵现入立通员位奉主习。基1》普念,)干克省政的求、讲要规书6。念 怀社以和为干党清要与一献题动本纳通,分县部思委、宗和话结划记按怎 、会知要行事志风员坚全体、党员教入一带别处要主、从旨好谐,合开给照么 务主促求动创愿正、持面”有日,材学员头围级义市严意干发要专局“办 实义行。的业、气学建总作活领,习,攻绕以做立委治识部展重起三、 思要力重”做成体为动导深内密坚“上结场决家,标。点步会新 想“知着量开温3结小的布。干入容切克坚党合观策,积准学、一战 作四行重;拓入(合康要局合4部学。联难员,月点部带极,习“课略 风个合学坚进党三,社求、格带习深系、干对底方署头践带《决怎 。全一习定取誓)坚会和“党头《入群敢部照前法,弘行头习胜么 要面,领正的词做相内四员重习领众于要习,做扬社坚近全干 深”做会确精,合适容个。近会,担以近结领政社会定平面” 入战讲习的气对格应;全引平关全当《平合会治主理总小学 领略政近神党、重面导总于心,习总贯上主义想书康习 会布治平,员有点”党书改全带近书穿的义核信记、研 我局、总方平。效学战员记革意平记其明核心念系建讨 国、有书向常着服习略强系发为谈关中白心价列成; 发五信记,时眼务习布化列展人治的人价值重区注 展大念来经候党国近局政重稳民国坚;值要域重 战发,川常看和家平、治要定服理定践体讲中同 略展视主得国治总五意讲、务政信行系话心X机理察动出家书大识话内;》X仰党和读遇念重向,事和记发,读工政加《追的中本、要党业“对展保本作外强习求宗(中社讲的五四理持(“交党近、旨2会话央新位川念政02存国平历,10主和看发一工、治61凭防总年史6义系齐展体年作全本、、书版担核列对”版的面色留治记)当心重党建)系深史党重》意价要员设》列化、治要,识值指的,改资国讲重、观示X要革政治话点真X和将、、事军文领挚全毛育业的章会为面泽人发重选理民从东”展要编想严同的体论(信治志作系领念党用。导、等结中全方合国体面起梦党来、员,学加快
数据库课程设计——学生水电费管理系统
![数据库课程设计——学生水电费管理系统](https://img.taocdn.com/s3/m/f4b7fb0b1a37f111f0855b8b.png)
计算机操作系统课程设计任务书课程设计报告课程名称数据库原理课题名称学生宿舍水电费管理系统专业软件工程班级学号姓名指导教师2014年 05 月 12 日一、系统定义1.1 目的与要求随着科技的发展,基本上所有的具有一定数量数据的机构都开始使用计算机数据库来做管理。
几乎所有学校也都已经在使用计算机管理数据的机制,大大减少了日常任务的工作量。
该课程设计要求设计一个学生宿舍水电费的数据库管理系统,数据库中要求包含学生宿舍的基本信息,抄表信息。
要能够方便计算水电费、统计水电费使用情况,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
1.2项目范围项目范围:计算水电费、统计水电费;超出范围:学生在线查询水电费、自动抄表。
二、需求分析2.1 系统综合需求xx大学有多栋学生宿舍楼,每栋宿舍楼的宿舍具有自己的编号,一个宿舍成员可能来自不同的班级,一个宿舍最多住8个人。
每个宿舍都一块水表和一块电表,水电定额使用,超过定额要付费,学校给每个人的电定额10度/月,水定额4吨/月,超出部分按宿舍缴纳,如果未超出将节约量折合成水电费计入结余;学校的后勤集团每个月抄表一次,抄表后会给每个宿舍水电费通知单,如果水电费超出定额,需要交费,如不交费将停电或停水。
水电定额使用,超用量要付费,节约用量可返还水电费(返还部分打入结余)。
附表为水电费通知单、水电费、水电量统计表。
5-101宿舍水电费通知单宿舍号:5-101 抄表员号:21 日期:2013年8月应交费用 = (用水量- 用水定额)*水价+(用电量-用电定额)*电价如果实缴费用+结余大于应交费用,则多余费用自动转入上期结余系统应能够:1)后勤集团可以输入每个宿舍的水电表表底并由计算机自动计算结果、查看和打印每个宿舍水电费通知单。
2)可以按宿舍号、日期查看宿舍水电交费交费情况。
3)统计所有宿舍每个月水电使用情况、水电费情况2013-8月份用水用电情况月份:2013-082013-8月份水电交费情况月份:2013-08设计人机友好界面,功能安排合理,操作使用方便,并且进一步考虑系统在安全性,完整性,并发控制,备份和恢复等方面的功能要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
false
状态:1正常,2冻结,3欠费,4过期
账户信息表
字段
类型
大小
允许空
主键
账号
nvarchar
20
not null
true
电表号
nvarchar
50
not null
false
所在区域
nvarchar
50
not null
false
用电类型
int
not null
false
缴费类型
bit
null
false
备注
nvarchar
100
null
false
转账记录表
字段
类型
大小
允许空
主键
ID
int
not null
true
转账卡号
nvarchar
20
not null
false
转入卡号
nvarchar
20
not null
false
转账金额
decimal
(18,2)
not null
false
转账时间
时间
datetime
not null
false
用电量
decimal
(18,2)
not null
false
电价
decimal
(18,2)
not null
false
用电金额
decimal
(18,2)
not null
false
抄表员
nvarchar
50
not null
false
录入员账号
nvarchar
20
not null
false
状态
int
not null
false
结算时间
datetime
null
false
备注
nvarchar
100
null
false
状态:1交齐,2未缴
结算记录表
字段
类型
大小
允许空
主键
ID
int
not null
true
结算金额
decimal
(18,2)
not null
false
结算时间
datetime
not null
false
操作员账号
nvarchar
20
not null
false
转账人
nvarchar
50
null
false
备注
nvarchar
100
null
false
用电记录表
字段
类型大小Leabharlann 允许空主键ID
int
not null
true
账号
nvarchar
20
not null
false
校园电费管理系统
E-R图
数据库表设计
用户信息表
字段
类型
大小
允许空
主键
账号
nvarchar
20
not null
true
账户名
nvarchar
50
not null
false
密码
nvarchar
15
not null
false
类型
int
not null
false
联系方式
nvarchar
15
not null
false
datetime
not null
false
结算员账号
nvarchar
20
not null
false
签收人
nvarchar
50
not null
false
备注
nvarchar
100
null
false
电价变动表
字段
类型
大小
允许空
主键
ID
int
not null
true
现电价
decimal
(18,2)
not null
字段
类型
大小
允许空
主键
ID
int
not null
true
充值卡号
nvarchar
20
not null
false
充值金额
decimal(18,2)
not null
false
充值时间
datetime
not null
false
操作员账号
nvarchar
20
not null
false
充值人
nvarchar
50
类型:1管理员,2录入员,3业务员,4用户
IC卡信息表
字段
类型
大小
允许空
主键
卡号
nvarchar
20
not null
true
有效日期
datetime
not null
false
余额
decimal
(18,2)
not null
false
持卡单位/个人
nvarchar
50
not null
false
状态
int
false
原电价
decimal
(18,2)
not null
false
调整日期
datetime
not null
false
录入人账号
nvarchar
20
not null
false
备注
nvarchar
100
null
false
not null
false
当前绑定卡号
nvarchar
20
null
false
用电类型:学生公寓,教职工校工家属公寓,个体经营商(商店,理发店,饭店,食堂窗口),教学科研(教学楼,实验室,图书馆),公共设施(体育场,路灯,广播),行政办公(办公楼,网络中心,就业中心)等
缴费类型:1自缴,2公缴
充值记录表