中南大学数据库课程设计之冰箱荐购课程设计.docx_第1页
中南大学数据库课程设计之冰箱荐购课程设计.docx_第2页
中南大学数据库课程设计之冰箱荐购课程设计.docx_第3页
中南大学数据库课程设计之冰箱荐购课程设计.docx_第4页
中南大学数据库课程设计之冰箱荐购课程设计.docx_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

中南大学数据库课程设计课程设计题目 冰箱购买系统设计 指 导 老 师 张祖平,么旭君 专 业 班 级 电子信息1002 姓 名 学 号 实 验 日 期 2013年7月 目 录1 前言31.面向对象32.课程设计目的33.课程设计总体要求34.课程设计要求35.开发工具36.开发任务概述32 后台程序设计41.系统E-R表构建42.SQL表格部分截图73 前台程序设计91.实验设计总体框架102.功能模块分析103.业务流程104.实验设计截图10四实验心得28前 言一面向对象 中南大学2010级信息科学与工程学院电子信息工程专业1001-1004班学生2 课程设计目的 培养学生熟练掌握一种大型数据库系统的开发环境如ORACLE9i/10g/11g(或更高版本)或SQL SERVER2005/2008/2010(或更高版本),对其底层的数据库触发器与程序过程有深入的了解,了解并基本掌握面向数据库的C/S模式的通用开发工具如VB、PB或DELPHI或直接用语言C#或Java开发C/S模式的系统;或者采用ASP、JSP、PHP等开发技术来开发B/S模式的系统,熟悉开发一个小型应用系统的过程及主要技术。其中基于.Net平台与J2EE平台工具套件中同时支持B/S模式与C/S模式的开发。三课程设计总体要求 1完成设计、程序编制、调试与检查验收 2书写完整的课程设计报告(至少20页),需求分析(要做什么事情如功能需求、信息需求、做到什么程度如性能需求、有哪些难点或关键技术),系统设计(功能模型、信息模型、数据库设计、典型处理流程或算法、典型的后台处理如触发器或过程所涉及到的逻辑等)、系统实现及关键技术、总结与展望等章节。 3.数据库与大型程序的对象命名规则一定为XXX_班号(+)学号尾4位例如car_master_10104即表示车辆主要信息表,为1班,学号尾数是0104设计的表结构,cloth_Detail_42309即表示衣服信息明细表,为4班,学号尾数是2309设计的表结构,对象(包括大的程序对象及程序名等)如果不能体现班级及学号等信息,则视为程序不合要求,程序部分成绩可能不合格。4 课程设计要求 (1)提出技术方案,主要包括开发与运行模式选择、开发工具、数据库管理系统及其主要的特性保证。(课程设计报告中体现) (2)对系统的功能和数据进行需求分析、总体设计和详细设计,并提交设计报告。报告中数据库设计部分要包含系统E-R图、数据字典、表、视图、索引、文件组织结构等的定义和描述,还需要包括对象命名法。 (3)程序实现各项功能,在课程设计报告中要反映实现过程中采用的关键技术和主要程序流程以及主要的操作界面。 (4)数据库后台最好有触发器与多个过程,数据结构中最好有主明细结构(即主表与明细表联动)。5 开发工具Microsoft SQL Server 2005,Microsoft Visual Basic 6.0 中文版六开发任务概述本次设计主要是开发商品荐购系统。其业务需求如下:某大型网购公司已积累了稳定的用户群,为了与用户加强联系、广泛收集商品信息、给用户更好的价格,特推出商品荐购系统,即由用户推荐网上其它门店的商品明细(含价格),系统管理员通过系统获取荐购的商品信息后会通过各种渠道进行核对(主要是人工方法,系统辅助商品比较分析),如果信息属实,系统管理员会给用户(会员)增长积分(标准为1-10分),并根据会员积分的情况进行升级(如原来0分为初级会员,荐购成功积累大于等于10分,升级为1级会员,如积累100分及以上,则为10级会员,其它级别依此类推),再根据会员级别允许会员以级别相应折扣购买推荐的或其它用户推荐的商品,如初级为全价,1级为9折、5级为5折可购买自荐商品或其它用户荐购商品;6级为4折、9级为1折可购买自荐商品;10级及以上直接免费获得自荐商品。商品荐购系统的功能主要包括1用户或会员操作功能:(1)用户注册、用户登录、用户信息维护等;(2)商品搜索、比较、排名、推荐等;2管理员操作功能:(1)推荐商品采纳、会员积分、会员升级;(2)商品类别维护、类似商品信息统一等;(3)商品搜索、比较、排名;(4)操作日志记录、查询与维护等。可采用C/S模式也可以采用B/S模式,还可以采用C/S模式与B/S模式相结合的汇合模式如管理员功能中商品类别维护、类似商品信息统一等;操作日志记录、查询与维护等用C/S模式,其它功能用B/S模式等,混合模式只要实现部分功能其程序部分的成绩将是良好及以上。最好以某一实际的商品为参考,尽量不重复!商品类别重复的,将考虑成绩降档,先由同学将开发技术与商品类别对象于18周二上午报上来(可报2-3个),由指导老师协调后于18周三反馈给大家。每种类型的商品其描述属性不完全一样,请注意数据表结构的设计。商品可为车辆、衣服、图书、运动器材、食品、电子设备、鲜花、手机等等,还可以冠以不同的厂家或公司如:通用汽车、红旗轿车、山河智能轻型飞机、唯品会衣服、李宁运动服装、三星手机、联想电脑等等。后台程序设计我选择设计的是冰箱购买系统,使用SQL Server 2005建立后台程序数据表,用Microsoft Visual Basic 6.0编写前台程序代码,然后连接数据库完成程序实现。1 系统E-R表构建用 户 查找商品购买商品查看已有荐购商品注 册查找信息表购买信息表荐购信息表注册会员信息表管 理 员添加积分用户表荐购信息表商品表用户表更新查询积分查看荐购商品会员信息表用 户登录购买商品购买信息表商品信息表购买信息表查看登录用户商品信息表会员信息表荐购信息表积分表商品信息表添加积分查询更新管理员 二、后台SQL表格一览 本次课程设计所使用的数据库名称及所有表的列表如图所示该表为产品表 用来存储产品信息该表为购买表用来存储购买记录该表为管理员表用来存储管理员账号该表为用户表用来存储用户信息该表为推荐表用来存储用户推荐的已有商品该表为推荐表 用来存储用户推荐的系统没有的商品前台程序设计前台程序由Microsoft Visual Basic 6.0设计,设计过程中与数据库建立连接,实现程序的运行。 需要用Adodc空间来连接数据库。 一.实验设计总体框架开 始 管理员修改和删除商品修改密码推荐商品查询商品登录,注册前台程序设计图形界面编写实验代码设计后台数据库2 功能模块分析1. 注册:用户必须注册为会员才课进行购买及推荐业务.2. 推荐商品:推荐商品分为两个模块,一个是对已有的商品进行推荐,只需输入对应商品的编号就可以进行推荐,只要是会员就可以在推荐页面中看到推荐的商品.另一个模块是对没有的商品进行推荐,推荐后只有管理员可以看见。3. 购买商品:购买商品模块只需输入商品的编号就可以购买商品,购买成功后就可以在购物记录里看见自己购买的商品。每个会员只能查看自己购买的商品无法看到别人购买的商品。4. 管理员模块:管理员模块主要是添加管理员的功能,管理员可以对商品进行添加和删除,以及查看会员的信息,还可以对进行推荐的会员进行添加积分的操作。5. 积分模块:积分模块主要是用于商品的折扣,当会员进行商品推荐后,管理员就可以对其进行加积分的操作,随着积分的增长会员的等级也会增长,而高等级以后购买商品就会有对应的折扣。3 业务流程用户通过注册可以成为本店的会员,注册成会员后方可查看,购买和推荐商品,并可获得相应的积分奖励。会员可以修改自己的用户信息,购买或者推荐商品成功后,操作完成。4 实验设计及截图1、 登陆界面 登陆功能的实现:Private Sub cmdOK_Click()Dim sql As StringDim rs As ADODB.RecordsetDim strusername As StringDim intuserkey As IntegerOn Error GoTo errhandler:If Trim(txtusername.Text = ) ThenMsgBox 请输入用户名称!, vbExclamationtxtusername.SetFocusElsesql = select * from member_21001 where 登录名= & txtusername.Text & Set rs = ExeSQL(sql)If rs.EOF = True ThenMsgBox 没有此用户,请重新输入用户名!, vbExclamationtxtusername.SetFocusElseIf Trim(rs!密码) = Trim(txtuserkey.Text) ThenMsgBox 登陆成功!, vbExclamationrs.CloseMe.HidefrmTip.ShowUnload MeElseMsgBox 密码不正确,请重新输入, vbExclamationtxtuserkey.SetFocustxtuserkey.Text = End IfEnd IfEnd IfExit Sub2、 注册界面注册功能的实现:Private Sub Command1_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 If Text1.Text = Or Text2.Text = Or Text3.Text = Or Text4.Text = Then MsgBox 输入的用户注册信息不完全!, , 提示信息 Else Adodc1.RecordSource = select * from member_21001 where 登录名= + Text1 + 判断注册的用户名是否存在 Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then MsgBox 该账号已经存在,请您更换其他账号!, 48, 提示信息 Text1.SetFocus Else If Text2.Text = Text3.Text Then 判断两次输入的密码是否一致 Adodc1.RecordSource = select * from member_21001 Adodc1.Refresh 保存注册信息 Set adors = cnn.Execute(insert into member_21001 values( & Text1.Text & , & Text5.Text & , & Text2.Text & ,0,0, & Text4.Text & ) MsgBox 注册成功!, 48, 用户注册信息提示 cnn.Close 关闭与数据库的连接 Text1.Text = Text2.Text = Text3.Text = Text4.Text = Text5.Text = Unload Me Form1.Show Else MsgBox 两次输入的密码不一致,请您确认后重新输入, 48, 用户注册信息提示 Text3.Text = Text4.Text = Text3.SetFocus End If End If End If ElseEnd IfEnd Sub3、 主页面4、推荐新商品界面推荐功能的实现:Private Sub Command1_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 Adodc1.RecordSource = select * from tuijian2_21001 Adodc1.Refresh Set adors = cnn.Execute(insert into tuijian2_21001 values( & Text5.Text & , & Text1.Text & , & Text2.Text & , & Text3.Text & , & Text4.Text & ) MsgBox 感谢您的推荐,我们会尽快进货!, 48, 用户注册信息提示 cnn.Close 关闭与数据库的连接 Text1.Text = Text2.Text = Text3.Text = Text4.Text = Text5.Text = End If5、 商品购买页面 搜索功能的实现:Private Sub Command1_Click()Dim str As Stringstr = select * from product_21001 where & Combo1.Text & like % & Text1.Text & %Adodc1.RecordSource = strAdodc1.RefreshEnd Sub购物功能的实现:Private Sub Command5_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 Set adors = cnn.Execute(insert into buy_history_21001 select & Label3.Caption & , 编号, 品牌, 型号, 颜色, 类别, 容量, 能耗, 价格, 0, 卖家 from product_21001 where 编号 = + Text2 + ) MsgBox 购买成功!, 48, 用户注册信息提示 Set adors = cnn.Execute(update buy_history_21001 set 实际价格 = 价格/10*(10-(select 等级 from lingshi_21001) where 编号 = + Text2 + ) Text2.Text = cnn.Close 关闭与数据库的连接End IfDim str As StringEnd Sub 推荐功能的实现:Private Sub Command6_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 Adodc1.RecordSource = select * from product_21001 Set adors = cnn.Execute(insert into tuijian_21001 select & Label3.Caption & , 编号, 品牌, 型号, 颜色, 类别, 容量, 能耗, 价格, 卖家 from product_21001 where 编号 = + Text3 + ) MsgBox 谢谢您的推荐!, 48, 用户注册信息提示 Text3.Text = cnn.Close 关闭与数据库的连接End IfDim str As String6、 推荐商品界面7、 购买记录界面8、 管理员界面添加商品功能的实现:Private Sub Command1_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenAdodc1.RecordSource = select * from product_21001 where 编号 = + Text1 + 判断编号名是否存在 Adodc1.Refresh If Adodc1.Recordset.RecordCount 0 Then MsgBox 编号已存在!, 48, 提示信息 Text1.SetFocusElseIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 Adodc1.RecordSource = select * from product_21001 Adodc1.Refresh Set adors = cnn.Execute(insert into product_21001 values( & Text1.Text & , & Text2.Text & , & Text4.Text & , & Text4.Text & , & Text5.Text & , & Text6.Text & , & Text7.Text & , & Text8.Text & , & Text9.Text & ) MsgBox 添加成功, 48, 用户注册信息提示 cnn.Close 关闭与数据库的连接 Text1.Text = Text2.Text = Text3.Text = Text4.Text = Text5.Text = Text6.Text = Text7.Text = Text8.Text = Text9.Text = End If End If删除商品功能的实现:Private Sub Command2_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 Adodc1.RecordSource = select * from product_21001 Adodc1.Refresh Set adors = cnn.Execute(delete from product_21001 where 编号 = + Text1 + ) MsgBox 删除完毕!, 48, 用户注册信息提示 cnn.Close 关闭与数据库的连接End IfDim str As Stringstr = select * from product_21001Adodc1.RecordSource = strAdodc1.RefreshEnd Sub积分增加功能的实现:Private Sub Command6_Click()Dim cnn As New ADODB.ConnectionDim adors As New ADODB.Recordsetcnn.ConnectionString = Provider=SQLOLEDB.1;Password=sa;User ID=sa;Initial Catalog=白志恒_21001;Data Source=WIN-20120304XBOcnn.OpenIf cnn.State = adStateOpen Then Set adors.ActiveConnection = cnn 设置cmd的ActiveConnection属性,指定与其关联的数据库连接 Set adors = cnn.Execute(update member_21001 set 积分 = 积分+3 where 昵称 = + Text3 + ) Set adors = cnn.Execute(update lingshi_21001 set 积分 = 积分+3 where 昵称 = + Text3 + ) Set adors = cnn.Execute(update member_21001 set 等级 = 积分/10 where 昵称 = + Text3 + ) Set adors = cnn.Execute(update member_21001 set 等级 = 积分/

温馨提示

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

评论

0/150

提交评论