数据库课程设计电力公司收费系统
- 格式:doc
- 大小:261.50 KB
- 文档页数:29
数据库课程设计电费收费管理系统一个小型通用的电费收费管理系统主要目的是方便供电公司进行电费收费工作。
该系统的应用能使供电公司从繁重的手工劳动中解脱出来。
通过录入用户的基本信息和用户所消耗的电费数据建立起原始数据,并能够提供对电费价格进行管理,实现收费工作的信息化,智能化。
设计步骤:首先进行相关资料查阅和学习,了解基本的业务流程和系统数据功能要求。
然后结合软件工程的理论和教材中数据库设计的六个阶段(重点是前三个阶段)完成设计任务,即系统结构设计(需求分析、概念结构设计、逻辑结构设计、物理结构设计)和系统功能设计。
设计要求:1、撰写课程设计说明书。
其要求如下:(1)基本要求:①能反映完成了上述设计内容要求。
②要求撰写不少于5000个文字(20页)的文档。
③文档中至少要包括:数据流图、数据字典、E-R图、数据库表的详细说明、系统功能结构图、主要功能模块说明。
④课程设计说明书一律用碳素墨水书写,其中用户界面设计可以附界面的计算机截图或手工绘图。
(2)文档格式要求(遵循数据库原理及应用课程设计大纲上的要求)其中,正文部分:①分章、层次等,每一章从新一页开始。
②章节安排可如下安排.概述:包括项目背景、编写目的、软件定义、开发环境等内容。
.需求分析:问题陈述、需完成的功能。
以数据流图和数据字典表达。
.概念结构设计:将上述需求分析的成果抽象为ER模型图。
.逻辑结构设计:把ER模型图转换为关系表;描述每一个基本表关系。
并进行规范化;定义视图、定义索引、主关键字、定义权限。
.软件功能设计:画出系统功能结构图,描述每个功能所完成的任务。
.代码设计和界面设计:给出主要功能的代码并有适当的说明;界面设计要合理,给出主要界面。
基于C/S与B/S混合模式电力收费管理系统设计与实现摘要:随着中国电力工业和电力企业本身的发展,原有的那种简单的收费系统已经难以适应现代电力企业的需要。
本文提出了一种基于c/s和b/s模式混合的电力收费系统。
对于局域网部门采用c/s 模式,对于远程用户采用b/s模式,同时提供了优越的系统功能和数据安全机制,是一种符合现代电力企业要求的电力收费管理系统。
关键词:收费管理系统b/s模式c/s模式oracle数据库中图分类号:c39 文献标识码:a 文章编号:1674-098x(2011)07(b)-0112-01引言随着国家经济高速发展电力需求空前旺盛,以及电力体制改革的不断深入,供电企业面临着调节用电需求和保障用电安全的严峻形势,同时客户对供电企业的服务质量也提出了更高的要求。
近年来,各级供电部门为了提高自身的工作效率、管理水平、服务质量,对电力营业收费管理工作进行了一系列的改革,如采用抄表机抄表、远程自动抄表、预先售电制、银行代收电费等。
同时各级供电企业正在进行城乡电网改造,还没有实现真正的“一户一表”,还存在一户多表、一表多计、电表的多层嵌套使用等。
另外由于政策性、地方性等因素的影响,比如电力公司调节电力需求实行谷峰分时电价、功率因素奖惩等,从而导致客户的电量电费计算十分复杂。
为此,供电企业必须建立一个功能全面便于管理的电力收费管理系统。
1 系统设计1.1 系统设计思想电力收费管理系统是电力企业营业管理的工具,也是电力企业面向客户的一个窗口。
首先,系统不仅应用在供电企业的各个营业窗口,还要提供用户互联网业务处理功能和与银行数据通信接口,用户的情况非常复杂,要求系统必须具有较高的安全性;其次,系统的客户比较多,日处理的数据量比较大,要求系统必须有较快的响应速度和数据安全性;再次,系统的核心是计算电量电费,要求系统必须能够处理各种复杂的用电情况下电量电费的计算问题;另外,电力收费系统作为电力企业的营销管理的一个重要工具,必须能为企业的决策提供依据。
本科毕业设计说明书题目:电费征缴系统的设计与实现学生姓名:X X X学院:信息工程学院系别:计算机系专业:软件工程班级:软件06指导教师:X X X讲师本文源码索取,请联系qq:68661508二O一O年六月摘要为了突破手工缴费模式,经过多年的电力信息化建设,电力企业已经建成了一系列服务于多方面的计算机信息系统。
电费征缴系统这种新的缴费方式使原来供电企业直管直抄不断上升趋势的居民客户的缴费难问题得以解决。
本系统包括电力收费部门所必须的缴费用户的开户登记,用户缴费,用户和费用余额查询等功能。
系统可以安全、快捷、一目了然的查询用电费用发生情况、欠费情况和账户资金情况,并进行电费的缴纳。
根据实际需求,电费征缴系统这个项目采用了JSP技术,在Windows XP操作系统环境下,使用JSP技术设计完成,并使用SQL Server 2000建设网络数据库。
本系统采用JDBC接口连接数据库,整个开发过程是在JSP页面上进行,WEB 工具采用Tomcat。
通过B/S模式(浏览器/服务器模式)进行前台后台的操作,对用户及时地进行添加,删除,查询。
本系统具有多方面特点:系统功能完备,使用方便简捷,人性化的用户界面,大大减少了操作人员的工作负担。
该系统详尽描述了开发电费征缴系统的全过程。
关键词: 开户登记;JSP技术;电费征缴;AbstractIn order to break manual paying mode ,and after many years electric power information construction, the electric power enterprise has already completed a series of services to the production, the marketing and so on the various computer information system. The electrical bill newly pays expenses information this kind to pay expenses the way to cause the original power supply enterprise ascending pipe straight to copy the unceasing trend of escalation the inhabitant customer to pay expenses the difficult question to be able to solve.This system is including the electric power charge department must pays expenses the user to open a bank account the registration, the user pays expenses, function and so on remaining sum inquiry. The system may the security, quick, the clear inquiry use electricity the expense to have the situation, the situation and the account fund situation, and carries on the electrical bill paying.According to the actual demand, the project of the electrical bill system adopts the JSP technology, in Windows under the XP operating system environment, and use SQL Server 2000 to build the network database. This system uses JDBC interface to connect the database, the entire development process is in the JSP page, WEB tools uses Tomcat. Through the B/S to operate in the front and the background, and users timely to add, delete, query.This system has the various characteristic: System function complete, easy to operate simple and direct, the human nature user contact surface, greatly reduced operator's work load. This system is described the development process of the electrical bill system.Key word: the user to open a bank; JSP; the electrical bill paying目录引言 0第一章系统开发相关技术介绍 (2)系统设计的相关知识介绍 (2)1.1.1 JSP (2)1.1.2 MyEclipse简介 (2)1.1.3 JDBC (3)SQL Server 2000 (4)JDK简介 (5)1.1.6 Tomcat简介 (6)系统环境配置 (6)1.2.1 JDK配置 (6)1.2.2 SQL Server 2000配置 (8)第二章电费征缴系统概述 (8)系统功能概述 (9)需求分析 (9)系统目标 (9)功能实现 (9)系统设计 (10)电费征缴系统功能模块结构图 (10)电费征缴系统流程图 (12)第三章数据库设计 (13)数据库分析 (13)数据库概念设计 (13)数据库逻辑结构 (14)数据表的结构图 (14)数据库表 (15)第四章公共类设计 (16)数据库相关类 (16)获取时间类 (18)第五章系统设计实现 (20)页面概述 (20)5.2 后台页面设计 (20)5.3 前台页面设计 (26)结论 (31)参考文献 (32)谢辞 (32)图表清单图1-1 JAVA_HOME变量 (7)图1-2 classpath变量 (7)图1-3 path变量 (7)图1-4 检测成功dos窗口 (8)图1-5 SQL Server 2000 driver for JDBC安装图标 (8)图1-6 三个架包导入位置图 (8)图2-1电费征缴系统功能模块结构图 (11)图2-2 电费征缴系统流程图 (12)图3-1管理员实体E-R图 (13)图3-2 用电用户实体E-R图 (14)图3-3 缴费信息实体E-R图 (14)图3-4 dianfei数据库所包含的数据表结构 (15)图5-1 登陆界面 (20)图5-2 登陆失败界面 (21)图5-3 后台管理界面 (22)图5-4 添加操作用户页面 (22)图5-5 验证添加操作用户页面 (23)图5-6 查询操作用户页面 (23)图5-7 删除操作用户页面 (24)图5-8 验证删除操作用户页面 (24)图5-9 查询全部用电用户页面 (25)图5-10 查询用电用户缴费信息页面 (25)图5-11 用电用户缴费信息显示页面 (26)图5-12 删除用电用户页面 (26)图5-13 开户登记页面 (27)图5-14 验证开户登记页面 (27)图5-15 征缴电费页面 (28)图5-16 验证征缴电费页面 (28)图5-17 查询缴费页面 (29)图5-18 缴费信息显示页面 (29)图5-19 查询用户信息页面 (30)图5-20 用户信息显示页面 (30)表3-1管理员操作员表 (15)表3-2用电用户表 (15)表3-3缴费信息表 (15)引言随着用电范围的不断扩大,用电用户数量的急剧增加,缴费用户的各种信息量也在不断成倍增长。
天津工业大学毕业设计(论文)向阳村电力收费管理系统的设计与实现毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:天津工业大学毕业设计(论文)任务书院长教研室主任指导教师毕业设计(论文)开题报告表天津工业大学本科毕业设计(论文)评阅表(论文类)天津工业大学毕业设计(论文)成绩考核表摘要随着社会信息化整体水平的提高,加快电力系统信息化建设也成为一种必然的趋势。
电力行业是关系国计民生的重要事业,因此,电力行业的信息化建设不仅是其自身发展的保证,更是和百姓紧密相关的利民工程。
电力行业关于电费的征收是一项基本的工作,较传统的征收方法利用计算机系统的软件处理进行收费管理,生成各种报表,有利于提高管理决策,具有先进的通用性,操作方便性,可有效的实现农户用电和缴费管理。
大大减少了人力物力,为以后发展网络化的电力收费管理系统打下基础。
该系统采用了SQL SERVER 2000 搭建数据库,使用Microsoft Visual Studio 2005为开发工具。
该收费管理系统根据抄表人员提供的用电情况,进行数据录入、修改、查询、电费用计算、票椐打印(缴费发票),统计汇总等功能。
数据库课程设计电力公司收费系统数据库课程设计题目某电力公司收费管理信息系统专业班级姓名学号完成日期 -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 { }}}}七、运行结果展示:触发器实现自动修改和计算:每当添加一个新值,收费标志自动改成未收存储过程的实现,实现存储指定日期的应收费用和实收费用八、总结与心得体会经过几月的课程设计,还是简单地完成了“某电力公司收费管理信息系统”题目的相关要求。
数据库表设计—⽔电费缴费系统⽔电缴费管理系统数据表设计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'电费价格';管理员表:⽤户表:⽔费表:电费表:价格表:。
电费收费系统课程设计一、课程目标知识目标:1. 让学生理解电费收费系统的基本构成和运作原理;2. 掌握电费计算公式,并能根据不同情况调整计算方法;3. 了解电费收费系统的相关政策和法规。
技能目标:1. 培养学生运用信息技术解决实际问题的能力,能独立设计并实现一个简单的电费收费系统;2. 提高学生分析数据、处理数据的能力,能对电费收费系统进行优化和改进;3. 培养学生团队合作精神,能在项目中进行有效沟通和协作。
情感态度价值观目标:1. 培养学生关注社会问题,意识到节能减排的重要性,树立环保意识;2. 引导学生正确认识电费收费系统在社会生活中的作用,增强学生的社会责任感;3. 培养学生对信息技术学科的兴趣,激发学生主动探索和创新的热情。
课程性质:本课程为信息技术学科的课程设计,旨在让学生将所学知识应用于实际问题的解决,提高学生的实践能力。
学生特点:学生处于高年级阶段,具备一定的信息技术基础和解决问题的能力,对实际应用有较高的兴趣。
教学要求:注重理论联系实际,强调学生的动手实践,鼓励学生创新思维,培养解决问题的能力。
在教学过程中,将目标分解为具体的学习成果,以便于教学设计和评估。
二、教学内容1. 电费收费系统的基本构成与原理:- 了解电费收费系统的组成部分,如电能表、数据采集器、计费系统等;- 学习电费计算的基本公式和不同计费方式。
2. 电费收费系统的设计与实现:- 掌握系统设计的基本流程,包括需求分析、系统设计、编码实现和测试;- 学习使用编程语言和数据库技术,设计并实现一个简单的电费收费系统。
3. 电费收费系统的优化与改进:- 分析现有电费收费系统的不足,探讨优化方案;- 学习数据挖掘和智能算法,对系统进行优化和改进。
4. 电费收费系统的政策与法规:- 了解国家关于电费收费的政策法规;- 掌握相关政策法规在电费收费系统中的应用。
教学大纲安排:第一周:电费收费系统基本构成与原理学习;第二周:电费计算公式及计费方式学习;第三周:系统设计基本流程学习,需求分析和系统设计;第四周:编码实现和测试,完成简单电费收费系统;第五周:现有系统优化与改进方案探讨;第六周:政策法规学习及其在电费收费系统中的应用。
电网缴费管理系统需求分析系统需求分析是系统开发过程中最关键的一部分,是对系统需要达到的目标,实现的功能进行详细地分析,明确了要开发的系统做什么,达到什么效果,分析和寻求系统的解决方法,并且,后续的每一个阶段都需要按照系统提出的需求来实施。
系统需求分析是系统开发的前提,决定着系统是否能够提供有效的服务,关系着项目的成败。
1系统的功能性需求前期,在对鞍山电网缴费管理系统的调研中了解,电力企业普遍采用用例驱动和用户信息反馈两种调研方法,确定系统的功能性需求,特别是在对鞍山市供电公司电力管理工作的考察中了解,该单位调研工作中问题出现最多的就是客户评价反馈,由于客户面对的电力工作人员缺乏系统的软件知识,而客户本身又不清楚电力业务的完整内容,所以,以此来确定相关业务,缺乏实用性和可行性。
而由系统开发人员与系统用户建立的用户访谈,相对具有一定的科学性和实用性,这源于二者可以结合实际工作进行沟通,从而提出切实的业务需求,并根据业务需求将系统以单元的形式进行划分。
通过访谈的形式,系统开发人员可以及时准确地掌握用户的工作意见,并通过对系统地整理,变成系统开发人员可以读懂的数据信息,这种系统采用的方法称为“用例驱动法”。
通俗来说,就是根据用户提出的意见,按照图例的形式,对系统整体进行完善,从而确保系统运行环境的稳定性和安全性。
1.1 用户基本信息管理用例电费信息维护工作的顺利开展,必须以健全的客户基本信息作为基础保障。
通常,客户基本信息保障工作由区域供电局电费收缴部分的具体工作人员承担,主要负责用户基本信息编辑、完善、增补以及将用户基本信息在数据库中予以完善等,另外,还可以利用用户的工号、编码、电子码在系统数据库中查询具体用户的基本信息,实现利用检索结果,对某一个用户的个人信息进行定向增补的工作需要。
用户基本信息维护的用例如图1所示:工作人员图1 用户基本信息维护1.2 用户台账信息管理用例为了实现对用户台账信息的系统性处理,确保用户台账信息管理的准确性和规范性,系统必须添加用户台账信息管理用例。
数据库课程设计电力公司收费系统
数据库课程设计
题目某电力公司收费管理信息系统
专业班级
姓名
学号
完成日期 -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 客户
(。