数据库实验报告-汽车俱乐部管理系统_第1页
数据库实验报告-汽车俱乐部管理系统_第2页
数据库实验报告-汽车俱乐部管理系统_第3页
数据库实验报告-汽车俱乐部管理系统_第4页
数据库实验报告-汽车俱乐部管理系统_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.河北工业大学数据库原理实验实验报告题目: 汽车俱乐部管理系统 专业: 完成日期: 2014/1/7 一 概述1.1目的与要求为实现汽车俱乐部行业信息的规范化管理,某软件开发商要求开发一汽车俱乐部管理系统,面向俱乐部工作人员进行会员信息的管理。主要功能包括:用户(俱乐部工作人员)身份验证和用户权限组织;提醒服务(提醒各种该执行的车务活动);会员管理(会员信息、会员费收缴记录录入,查询,修改);车务管理(新车上牌代办,保险代办,验证代办,落户代办等);救援服务(呼救记录,救援情况记录以及救援车辆管理);旅行服务(旅行信息记录、修改、查询);统计报表、图表(所有当日、当月、当年向会员提供的各种服务信息及其收费的详细情况列表及汇总);系统管理(设置提醒提前日期,用户管理等);俱乐部管理(俱乐部部门、工作人员、救援车辆管理);系统帮助。1.2设计环境Microsoft SQL Server 2000Microsoft Visual studio2010二 需求分析2.1 系统功能要求设计此系统实现如下系统功能:1 对本系统登录账户的管理。提供两种登录模式,即管理员登录模式和普通登录模式(有权限限制)。其中管理员权限最高,可以进行系统中的所有操作。普通登录用户,对部门管理和工作人员管理没有权限操作。普通登录用户在对系统用户进行管理时须进行管理员密码认证。2 管理会员:实现对会员的增加,删除,修改,查找,以及会员交费的操作。3 管理车辆:对俱乐部的救援车辆进行增加,删除,修改的管理。4 管理部门:实现对俱乐部内各个部门的增加,删除的管理及统计各个部门的人数。5 管理员工:实现对俱乐部内工作人员增,删,查及部门间调度的管理。6 系统用户管理:该功能仅提供给管理员用户,或者拥有管理员密码的用户。系统只允许有且只有一个名为fzw的管理员,且其用户名不可更改。在对系统用户进行增加,删除操作时,可以允许一个客户拥有不同的几个密码(均为普通用户级别)。7 提供救援服务:为本俱乐部会员提供救援服务,同时记录救援情况。8 提供旅行服务:为本俱乐部以交会费的会员提供旅行服务,同时可为未交费会员交费。2.3 数据字典 数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。利用SQL Server 2000建立“汽车俱乐部”数据库,其基本表清单及表结构描述如下:表2-1数据库表名清单序号中文表名表功能说明1车辆存储俱乐部救援车辆状态2部门存储俱乐部中各个部门人数3会员存储俱乐部会员的个人信息4员工存储俱乐部员工信息5用户存储该管理系统的登录用户账号及密码表2-2车辆序号字段名类型取值约束空否默认值主键/外键索引否1carid文本否主键2id文本忙/闲否闲索引表2-3部门序号字段名类型取值约束空否默认值主键索引否1id自动编号大于等于1否自动编号2bumenname文本否主键索引3renshu文本大于等于0否0表2-4用户序号字段中文名类型取值约束空否默认值主键索引否1编号自动编号自动编号 2username文本否主键索引3password文本否表2-5会员序号字段名类型取值约束空否默认值主键索引否1编号自动编号否自动编号2name文本否主键索引3sex文本男/女否男4id文本否5tel文本否6Car_id文本否7fee文本是/否否是索引8lvxing文本表2-6员工序号字段名类型取值约束空否默认值主键索引否1name文本否主键2sex文本否3tel文本否4bumen文本否索引5shengri文本日期格式否三 概念模型设计由需求分析的结果可知,本系统设计的实体包括:车辆、部门,用户,会员,员工经分析得到系统的ER图:四 逻辑和物理结构设计4.1由系统ER图转化而得到的关系模式如下:会员(姓名,电话,性别,会费,旅行,身份证号,车牌号)员工(姓名,性别,电话,入职时间,所属部门)部门(部门名,人数)车辆(车牌号,状态)救援(姓名,车牌号,救援情况)4.2 确定关系模型的存取方法在将概念模型转换成物理模型之后,我们可以对物理模型进行设计,双击物理模型的关系,可以对该关系的名称、注释等信息进行查询。可对该关系的属性列进行设计,可分别设置其名称、码、数据类型以及主码、是否为空等。在实际设计中最常用的存取方法是索引发,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。才能充分利用索引的作用避免因索引引起的负面作用。4.3 确定数据库的存储结构确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。因为该成绩管理系统的数据量小,所以我们只用把数据存储在使用的电脑硬盘上,不用作更多的安排。五 数据库的实施与维护5.1 数据库的实施:1 QuanXianClass(Module Name)1.1 描述(Description)该类存储当前用户的权限1.2 代码(Program)using System;using System.Collections.Generic;using System.Text;namespace 汽车俱乐部 class QuanXianClass public static int QuanXian ; 2 Form1(Module Name)2.1 描述(Description)登录代码2.2 代码(Program)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace 汽车俱乐部 public partial class Load : Form public Load() InitializeComponent(); Tag = 0; DBClass db1 = new DBClass(); private void button1_Click(object sender, EventArgs e) if (name.Text.Trim() = | pwd.Text.Trim() = ) MessageBox.Show(请完整填写用户信息, 提示); else db1.OleDbConn.Open(); string str = select * from 用户 where username= + name.Text.ToString() + and password= + pwd.Text.ToString() + ; OleDbCommand comm = new OleDbCommand(str, db1.OleDbConn); if (comm.ExecuteScalar() != null) db1.OleDbConn.Close(); Tag = 1; this.Close(); if (name.Text.ToString() = fzw) QuanXianClass.QuanXian = 1; else QuanXianClass.QuanXian = 0; else MessageBox.Show(用户信息有误,请重新登录!); db1.OleDbConn.Close(); private void button2_Click(object sender, EventArgs e) this.Close(); 3 AddMemberForm(Module Name)3.1 描述(Description)添加会员代码3.2 代码(Program)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace 汽车俱乐部 public partial class AddMemberForm : Form public AddMemberForm() InitializeComponent(); private void button2_Click(object sender, EventArgs e) this.Close(); private void button1_Click(object sender, EventArgs e) if (textBox1.Text.Trim() = | textBox3.Text.Trim() = | textBox2.Text.Trim() = | comboBox1.Text.Trim() = | textBox4.Text.Trim() = | comboBox2.Text.Trim() = ) MessageBox.Show(信息不完整); else OleDbConnection con; con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); string str1 = insert into 会员(name,id,tel,sex,car_id,fee) values( + textBox1.Text.ToString() + , + textBox3.Text.ToString() + , + textBox2.Text.ToString() + , + comboBox1.Text.ToString() + , + textBox4.Text.ToString() + , + comboBox2.Text.ToString() + ); OleDbCommand cmd1 = new OleDbCommand(str1, con); cmd1.ExecuteNonQuery(); string str = select * from 会员; OleDbCommand cmd = new OleDbCommand(str, con); OleDbDataAdapter da = new OleDbDataAdapter(); da.SelectCommand = cmd; DataSet ds = new DataSet(); da.Fill(ds, cs); dataGridView1.DataSource = ds.Tables0; con.Close(); MessageBox.Show(添加成功,提示); private void AddMemberForm_Load(object sender, EventArgs e) / TODO: 这行代码将数据加载到表“systemDataSet11.会员”中。您可以根据需要移动或移除它。 this.会员TableAdapter3.Fill(this.systemDataSet11.会员); 4 ChangeMemberForm(Module Name)4.1 描述(Description)修改会员代码4.2 代码(Program)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace 汽车俱乐部 public partial class ChangeMemberForm : Form public ChangeMemberForm() InitializeComponent(); OleDbConnection con; OleDbDataAdapter adapter; private Boolean dbUpdate() string strSql = select * from 会员; DataTable dtUpdate = new DataTable(); dtUpdate = this.dbconn(strSql); dtUpdate.Rows.Clear(); DataTable dtShow = new DataTable(); dtShow = (DataTable)this.dataGridView1.DataSource; for (int i = 0; i dtShow.Rows.Count; i+) dtUpdate.ImportRow(dtShow.Rowsi); try this.con.Open(); OleDbCommandBuilder cmdbuilder; cmdbuilder = new OleDbCommandBuilder(this.adapter); this.adapter.Update(dtUpdate); this.con.Close(); catch(Exception ex) MessageBox.Show(ex.Message.ToString(); return false; dtUpdate.AcceptChanges(); return true; private void button1_Click(object sender, EventArgs e) if (dbUpdate() MessageBox.Show(修改成功!); private DataTable dbconn(string strSql) con.Open(); this.adapter = new OleDbDataAdapter(strSql, con); DataTable dtSelect = new DataTable(); int rnt = this.adapter.Fill(dtSelect); con.Close(); return dtSelect; private void button2_Click(object sender, EventArgs e) this.Close(); private void ChangeMemberForm_Load(object sender, EventArgs e) con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); OleDbDataAdapter da = new OleDbDataAdapter(select * from 会员, con); DataSet ds = new DataSet(); da.Fill(ds); dataGridView1.DataSource = ds.Tables0; / TODO: 这行代码将数据加载到表“systemDataSet5.会员”中。您可以根据需要移动或移除它。 this.会员TableAdapter.Fill(this.systemDataSet5.会员); 5 JiaoFeiForm(Module Name)5.1 描述(Description)会员交费代码5.2 代码(Program)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace 汽车俱乐部 public partial class JiaoFeiForm : Form public JiaoFeiForm() InitializeComponent(); private void button1_Click(object sender, EventArgs e) OleDbConnection con; con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); string str1 = update 会员 set fee = 是 where name = + comboBox1.Text.ToString() + ; OleDbCommand cmd1 = new OleDbCommand(str1, con); cmd1.ExecuteNonQuery(); con.Close(); MessageBox.Show(交费成功); private void JiaoFeiForm_Load(object sender, EventArgs e) OleDbConnection con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); OleDbCommand cmd1 = new OleDbCommand(); cmd1.Connection = con; cmd1.CommandText = select * from 会员 where fee =否; cmd1.CommandType = CommandType.Text; OleDbDataReader sdr = cmd1.ExecuteReader(); while (sdr.Read() comboBox1.Items.Add(sdr1.ToString(); con.Dispose(); 6 LvXingForm(Module Name)6.1 描述(Description)旅行服务代码6.2 代码(Program)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace 汽车俱乐部 public partial class LvXingForm : Form public LvXingForm() InitializeComponent(); private void LvXingForm_Load(object sender, EventArgs e) / TODO: 这行代码将数据加载到表“systemDataSet9.会员”中。您可以根据需要移动或移除它。 this.会员TableAdapter2.Fill(this.systemDataSet9.会员); OleDbConnection con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); OleDbCommand cmd1 = new OleDbCommand(); cmd1.Connection = con; cmd1.CommandText = select * from 会员 where fee =是; cmd1.CommandType = CommandType.Text; OleDbDataReader sdr = cmd1.ExecuteReader(); while (sdr.Read() comboBox1.Items.Add(sdr1.ToString(); con.Dispose(); / TODO: 这行代码将数据加载到表“systemDataSet8.会员”中。您可以根据需要移动或移除它。 this.会员TableAdapter1.Fill(this.systemDataSet8.会员); private void button2_Click(object sender, EventArgs e) this.Close(); private void button1_Click(object sender, EventArgs e) OleDbConnection con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); string str = update 会员 set lvxing = +comboBox2.Text.ToString()+ where name = +comboBox1.Text.ToString()+; OleDbCommand cmd = new OleDbCommand(str, con); cmd.ExecuteNonQuery(); con.Close(); MessageBox.Show(定制成功); private void button3_Click(object sender, EventArgs e) JiaoFeiForm jff = new JiaoFeiForm(); jff.ShowDialog(); 7JiuYuanForm(Module Name)7.1 描述(Description)救援服务代码7.2 代码(Program)using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;using System.IO;namespace 汽车俱乐部 public partial class JuYuanForm : Form public JuYuanForm() InitializeComponent(); private void button2_Click(object sender, EventArgs e) this.Close(); private void JuYuanForm_Load(object sender, EventArgs e) OleDbConnection con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); OleDbCommand cmd1 = new OleDbCommand(); cmd1.Connection = con; cmd1.CommandText = select * from 车辆 where status =闲; cmd1.CommandType = CommandType.Text; OleDbDataReader sdr = cmd1.ExecuteReader(); while (sdr.Read() comboBox1.Items.Add(sdr0.ToString(); con.Dispose(); private void button1_Click(object sender, EventArgs e) OleDbConnection con = new OleDbConnection(provider=Microsoft.Jet.OLEDB.4.0; data Source=C:UsersfzwDesktopsystem.mdb; Persist Security Info=False); con.Open(); string str = update 车辆 set status = 忙 where carid = + comboBox1.Text.ToString() + ; OleDbCommand cmd = new OleDbCommand(str, con); cmd.ExecuteNonQuery(); con.Close(); StreamWriter sw = new StreamWriter(救援日志.txt,true ); sw.WriteLine(车辆: + comboBox1.Text.ToString() + t时间: + System.DateTime.Now.ToString(d) +t+System.DateTime.Now.ToString(t) + : + System.DateTime.Now.Second.ToString()+ t情况: + textBox1.Text ); sw.Close(); MessageBox.Show(Help is on the way!); textBox1.Clear(); private void button3_Click(object sender, EventArgs e) ReadLogForm rlf = new ReadLogForm(); rlf.ShowDi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论