版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库原理及应用课程实习报告 题目:超市会员管理系统项目组长:王晓勃参加人:郭三先 刘媛媛 梁龙荣 指导老师:贺亚茹 完成时间 2012年12月31日一、项目名称:超市会员管理系统3二、项目简单描述31、 项目背景32、项目基本需求32.1项目总体框架及需求分析3 2.1.1 系统功能分.3 2.1.2 会员管理系统E-R图.3 2.1.3 系统功能模块的划分.42.2开发环境52.3数据库逻辑设计结果.5三、项目实现71、创建数据库72、创建数据库对象83、建立索引10 4、建立视图.115、界面实现结果126、主要代码13四、结果评价及需要进一步完善的任务.221、 项目名称:超市会员管理
2、系统2、 项目简单的描述1、 项目背景 随着经济的发展,人们的生活水品得到了不断地提高,购物成为了生活中不可或缺的一部分,当然超市购物更是一大热点,所以超市会员管理系统的产生,对消费者提供了更多优惠的条件,同时还实现信息的规范化管理,科学统计和快速操作,从而减少管理方面的工作,也增强了人们购物的热潮,促进经济的快速增长。2、 项目基本需求 2.1项目总体框架及需求分析 2.1.1系统功能分析 会员管理系统开发是主要是方便对顾客消费的所有信息的管理,同时可以提供给顾客更多优惠的信息,提高顾客购物的热情,其中我们的会员管理系统实现了以下几个模块的功能:用户信息的管理,会员的管理,积分的管理,消费记
3、录的管理。功能实现如下:(1) 、用户信息的注册、登录、修改、查询(2) 、会员信息的查询、修改、删除(3) 、积分信息的查询、增加、删除、兑换(4) 、消费记录的兑换、更新、优惠2.1.2会员管理系统E-R图2.1.3系统功能模块的划分 根据上述功能,结构化程序设计的要求,得到如下图所示的功能模块如下: 超市会员管理系统 用户信息管理 会员管理 积分管理 消费记录管理用 用 信 信 信 信 信 积 积 积 积 记 优 兑户 户 息 息 息 息 息 分 分 分 分 录 惠 换登 注 查 修 查 修 删 兑 删 增 查 更录 册 询 改 询 改 除 换 除 加 询 新2.2开发环境Microso
4、ft SQL Server2005;Microsoft Visual Basic.2.3 数据库逻辑设计结果 2.3.1 将概念设计中的E_R图转化为关系模型形成逻辑结构设计 注:PK表示主键,FK表示外键会员(会员编号,姓名,性别,联系方式,证件号码,会员卡编号) PK:会员编号 FK:会员卡编号会员卡(会员卡编号,消费总额,注册时间,积分,级别编号) PK:会员卡编号 FK:级别编号级别(级别编号,级别名称,消费总额,级别优惠) PK:级别编号消费记录(消费编号,消费时间,消费金额,商品条形码,商品数量,会员卡编号) PK:消费编号 FK:会员卡编号商品记录(商品条形码,商品单价,商品名称
5、,商品数量,商品种类) PK:商品条形码2.3.2在实体以及实体之间的关系的基础上,形成数据库中的表格以及各个表之间的关系如下:会员信息表:字段名称字段类型是否为空约束字段说明vipNOchar(10)否主键会员编号vipNamechar(10)否会员姓名sexchar(6)是Male,female性别telephonevarchar(20)是唯一性联系方式cardNOchar(10)是外键会员卡编号IDcardChar(18)否证件号码会员卡表:字段名称字段类型是否为空约束字段说明cardNoChar(10)否主键会员卡编号topPricemoney是消费总额regTimeDATEtime是
6、注册时间jifenInt是积分gradeIDChar(5)否会员卡级别级别信息表:字段名称字段类型是否为空约束字段说明gradeIDChar(5)否主键级别编号gradeNamevarchar(10)否级别名称topPricemoney是消费总额YouhuiChar(5)否级别优惠消费记录表:字段名称字段类型是否为空约束字段说明expIDvarchar(10)否主键消费编号expPricemoney是消费金额expTimeDATEtime是消费时间barCodevarchar(20)否外键商品条形码expNumInt是购买数量cardNochar(10)否外键会员卡编号商品记录表:字段名称字段
7、类型是否为空约束字段说明barCodeVarchar(20)否主键商品条形码unitPricemoney否商品单价goodNamevarchar(20)是商品名称goodNumInt是商品数量goodSortvarchar(10)是商品种类三:项目实现1.创建数据库create database 会员管理系统on primary(name=会员管理系统_data, 'f:数据库数据库课程设计会员管理系统会员管理系统_data.mdf', size=500, maxsize=unlimited, )2. 创建数据库对象(1)会员卡信息表create table 会员卡(cardn
8、o char(10) not null primary key, topprice money, regtime datetime, jifen int, gradeid char(5) not null)(2)级别信息表create table 级别信息(gradeid char(5) not null primary key, gradename varchar(10) not null, topprice money, youhui char(5) not null)(3)商品信息表create table 商品记录(barcode varchar(20) not null primar
9、y key, unitprice money not null, goodname varchar(20), goodnum int, goodsort varchar(10)(4)消费记录表create table 消费记录(expid varchar(10) not null primary key, expprice money, exptime datetime, barcode varchar(20) not null foreign key references 商品记录(barcode), expnum int, cardno char(10) not null foreign
10、key references 会员卡(cardno)(5)会员信息表create table 会员信息(vipno char(10) not null primary key, vipname char(10) not null, sex char(6) check(sex='男' or sex='女'), telephone varchar(20) unique, cardno char(10) foreign key references 会员卡(cardno), idcard char(18) not null)log on(name=会员管理系统_log
11、, 'f:数据库数据库课程设计会员管理系统会员管理系统_log.ldf', size=500, maxsize=unlimited, )3. 创建索引/会员卡索引create unique index 会员_卡号 on 会员卡(cardno)create unique index 会员_积分 on 会员卡(jifen asc)/商品记录索引create unique index 商品_名称 on 商品记录(goodname)create unique index 商品_条形码 on 商品记录(barcode asc)/消费信息索引create unique index 消费_编
12、号 on 消费记录(expid)/会员信息索引create unique index 会员_姓名 on 会员信息(vipname)create unique index 会员_电话 on 会员信息(telephone)4. 建立视图视图1:create view 积分查询 asselect 会员信息.vipno,会员信息.vipname,会员卡.cardno ,会员卡.jifen,消费记录.expid,消费记录.expprice,消费记录.expnum,消费记录.exptimefrom 会员卡,会员信息,消费记录where 会员卡.cardno=会员信息.cardno and 会员卡.card
13、no=消费记录.cardno视图2:create view 会员信息视图 asselect 会员信息.vipno,会员信息.vipname,会员信息.sex,会员信息.telephone,会员信息.cardno,会员信息.idcard,会员卡.regtime,会员卡.jifen,会员卡.gradeidfrom 会员信息,会员卡where 会员卡.cardno=会员信息.cardno视图3:create view 消费记录视图 asselect 会员卡.cardno,会员卡.topprice,商品记录.goodname,商品记录.unitprice,消费记录.expnum,消费记录.exppri
14、ce,消费记录.exptime,消费记录.barcode,商品记录.goodnum,商品记录.goodsortfrom 会员卡,消费记录,商品记录where 会员卡.cardno=消费记录.cardno and 消费记录.barcode=商品记录.barcode;5.界面实现结果登陆界面:用户界面:6.主要代码(1)登陆界面代码Private Sub Command1_Click()'检查密码正确On Error GoTo errDim name As StringDim pass As Stringname = Text1.Textpass = Text2.TextIf name =
15、 "" Then MsgBox "您还没有选择用户名!", , "提示" Text1.SetFocus Exit SubEnd IfSet cmd.ActiveConnection = cncmd.CommandText = "select vipname from 会员信息 where vipname=" + "'" + name + "'" + " and passkey=" + "'" + pass + &
16、quot;'"Set rs = cmd.Execute If rs.EOF Then MsgBox "无效的密码,请重试!", , "登录" Text2.SetFocus Else Unload Me If Uscal = 1 Then 管理员.Show Else If Uscal = 2 Then 会员界面.Show End If End If End If Exit Suberr: MsgBox err.Description, , "信息"End Sub(2)会员信息查询界面Private Sub Comman
17、d1_Click()'On Error GoTo errDim vipcardid As Stringvipcardid = Text10.TextIf Combo1.Text = "会员信息" Then sql = "select * from 会员信息视图 where cardno=" + vipcardid + "" Set rs = New ADODB.Recordset Set rs.ActiveConnection = cn rs.CursorType = adOpenDynamic rs.Open Trim$(s
18、ql), cn, adOpenStatic, adLockOptimistic Set DataGrid1.DataSource = rs DataGrid1.Columns(0).Caption = "会员编号" DataGrid1.Columns(1).Caption = "会员姓名" DataGrid1.Columns(2).Caption = "性别" DataGrid1.Columns(3).Caption = "联系电话" DataGrid1.Columns(4).Caption = "会员卡
19、编号" DataGrid1.Columns(5).Caption = "证件号码" DataGrid1.Columns(6).Caption = "注册时间" DataGrid1.Columns(7).Caption = "积分" DataGrid1.Columns(8).Caption = "级别编号" DataGrid1.RefreshElse If Combo1.Text = "消费记录信息" Then sql = "select * from 消费记录视图 where
20、 cardno=" + vipcardid + "" Set rs = New ADODB.Recordset Set rs.ActiveConnection = cn rs.CursorType = adOpenDynamic rs.Open Trim$(sql), cn, adOpenStatic, adLockOptimistic Set DataGrid1.DataSource = rs DataGrid1.Columns(0).Caption = "会员卡编号" DataGrid1.Columns(1).Caption = "
21、;消费总额" DataGrid1.Columns(2).Caption = "商品名称" DataGrid1.Columns(3).Caption = "商品单价" DataGrid1.Columns(4).Caption = "购买数量" DataGrid1.Columns(5).Caption = "消费金额" DataGrid1.Columns(6).Caption = "消费时间" DataGrid1.Columns(7).Caption = "商品条形码"
22、 DataGrid1.Columns(8).Caption = "购买数量" DataGrid1.Columns(9).Caption = "商品种类" DataGrid1.Refresh Else 'Combo1.Text = "积分信息" sql = "select * from 积分查询 where cardno=" + vipcardid + "" Set rs = New ADODB.Recordset Set rs.ActiveConnection = cn rs.Curso
23、rType = adOpenDynamic rs.Open Trim$(sql), cn, adOpenStatic, adLockOptimistic Set DataGrid1.DataSource = rs DataGrid1.Columns(0).Caption = "会员编号" DataGrid1.Columns(1).Caption = "会员姓名" DataGrid1.Columns(2).Caption = "会员卡号" DataGrid1.Columns(3).Caption = "积分" Dat
24、aGrid1.Columns(4).Caption = "消费编号" DataGrid1.Columns(5).Caption = "消费金额" DataGrid1.Columns(6).Caption = "购买数量" DataGrid1.Columns(7).Caption = "消费时间" DataGrid1.Refresh End If End If Exit Suberr: MsgBox err.Description, , "信息"End Sub(3)注册信息代码Private Su
25、b Command5_Click()On Error GoTo err Set cmd.ActiveConnection = cn cmd.CommandText = "Insert into 会员信息 values('" + Text11.Text + "','" + Text5.Text + "','" + Text7.Text + "','" + Text8.Text + "','" + Text13.Text + &
26、quot;','" + Text6.Text + "','" + Text12.Text + "','" + Text9.Text + "')" Set rs = cmd.Execute sql = "select * from 会员信息 " Set rs = New ADODB.Recordset Set rs.ActiveConnection = cn rs.CursorType = adOpenDynamic rs.Open Trim$(sql
27、), cn, adOpenStatic, adLockOptimistic Set DataGrid3.DataSource = rs DataGrid3.Columns(0).Caption = "会员编号" DataGrid3.Columns(1).Caption = "会员姓名" DataGrid3.Columns(2).Caption = "性别" DataGrid3.Columns(3).Caption = "联系方式" DataGrid3.Columns(4).Caption = "会员卡编号
28、" DataGrid3.Columns(5).Caption = "证件号码" DataGrid3.Columns(6).Caption = "登陆类型" DataGrid3.Columns(7).Caption = "密码" DataGrid3.Refresh Exit Suberr: MsgBox err.DescriptionEnd Sub(4)修改密码代码Private Sub Command2_Click()Dim msg As String Set cmd.ActiveConnection = cn If Tex
29、t3.Text = Text4.Text Then cmd.CommandText = "update 会员信息 set passkey=" + "'" + Text3.Text + "'" + " where vipname=" + "'" + Text1.Text + "'" Set rs = cmd.Execute sql = "select * from 会员信息 " Set rs = New ADODB.Recor
30、dset Set rs.ActiveConnection = cn rs.CursorType = adOpenDynamic rs.Open Trim$(sql), cn, adOpenStatic, adLockOptimistic Set DataGrid2.DataSource = rs DataGrid2.Columns(0).Caption = "会员编号" DataGrid2.Columns(1).Caption = "会员姓名" DataGrid2.Columns(2).Caption = "性别" DataGrid2
31、.Columns(3).Caption = "联系方式" DataGrid2.Columns(4).Caption = "会员卡编号" DataGrid2.Columns(5).Caption = "证件号码" DataGrid2.Columns(6).Caption = "登陆类型" DataGrid2.Columns(7).Caption = "密码" DataGrid2.Refresh Else msg = MsgBox("两次输入密码不一致?", vbQuestion + vbYesNo, "提示") If msg = vbYes Then 会员界面.Cls 会员界面.S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育行业教研组长教学内容创新KPI考核表
- 手语翻译服务效能考核表
- 工程质量验收申请函(4篇)
- 通讯行业技术支持中心客服问题解决率KPI考核表
- 设备运行效率达标评估表
- 网络安全防护工程师绩效考核表
- 客户关系专员关系维护绩效衡量表
- 设备采购需求通知函(5篇)
- 农业岗2026结构化面试自测卷含解析农林岗
- 环境岗2026面试模拟练习含答案及配套答题技巧
- 事业单位财会岗招聘笔试高频考题试卷及解析
- 2026年《中国病毒性心肌炎诊疗临床指南(2026版)》
- 《化工企业设备检修作业安全规范》(AQ 3026-2026)解读化危为安
- 新背景下的2027年高考语文一轮备考策略
- ASTM D5276-23 中文版(运输包装件自由跌落测试标准 完整原文 + 不同重量跌落高度对照表)
- 2026 年世界标准日标准化知识科普课件
- 2026年危重患者抢救制度培训课件
- 2025-2026学年高一化学上学期第一次月考01(人教版必修第一册)A4版
- 2026通信工程专业招聘笔试精练(企业版)
- 2026华医网继续教育危重症患者气道精细化管理题库及答案
- 2026年四川省高考生物试卷(含答案及解析)
评论
0/150
提交评论