版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、山东理工大学计算机学院课程设计(数据库系统原理)网上书店管理信息系统班级姓名学号指导教师二。_年一月十三日课程设计任务书及成绩评定课题名称网上书店管理信息系统L题目的目的和要求通过数据库系统原理课程设计的操作与实践,使学生了解关系数据库的 相关理论知识和有关工具软件的使用技巧,在一定程度上提高应用程序的综 合开发能力和创新意识、创新能力,具体掌握的基本能力有以下几方面:1、学习和巩固数据库系统原理的基本知识。2、关系数据库管理系统的基本使用方法。3、熟悉SQL语言的主要功能及SQL语句的使用操作。4、熟悉数据库管理系统的设计过程,培养解决实际问题的能力。5、小型数据库应用系统的设计方法。要求独
2、立完成该课题设计。口、设计进度及完成情况日期内容2011.1.4对系统进行总体分析与设计2011.1.5进行总体系统概括描述分析2011.1.6系统性能分析2011.1.7逻辑结构设计,画出E-R图并转化为关系模式图2011.1.8数据字典与相关数据定义2011.1.9编写各个功能模块代码与总代码2011.1.10代码测试与修改2011.1.11系统各部分功能实现2011.1.12整理文档与封面设计虬主要参考文献及资料王珊,萨师煊主编.数据库系统概论(第四版).北京:高等教育出版社,2006.5何志丹 著 深入浅出Visual c+入门、进阶与应用实例 人民邮电出版社维埃拉 著,董明译SQL
3、Server 2005高级程序设计 人民邮电出版社李俊民著精通SQL结构化查询语言详解人民邮电出版社学科部主任M成绩评定设计成绩:指导老师:二。一一年 月 日 TOC o 1-5 h z HYPERLINK l bookmark28 o Current Document 第一章系统概述2 HYPERLINK l bookmark31 o Current Document 第二章系统分析2 HYPERLINK l bookmark52 o Current Document 第三章功能分析7 HYPERLINK l bookmark55 o Current Document 第四章系统实现8 HY
4、PERLINK l bookmark88 o Current Document 第五章调试过程中的问题及系统测试情况15 HYPERLINK l bookmark112 o Current Document 第六章结束语20第一章概述目前社会上信息管理系统发展飞速,越来越多的企事业单位都引入了信息管理软件来管理自己日 益增长的各种信息。各种网店也相继采用了不同的管理系统来管理商品信息,取得了很大的成效,网 上书店管理系统也在功能上不但完善和加强,为了使书店管理更加规范化,程序化,科学化,我们 研发了这次的网上书店管理系统。本系统的功能是为管理者提供方便的管理、为顾客提供快捷的购买。系统的主要子
5、模块有图书管 理,顾客管理等,可实现日常图书进货、发货业务,最终达到提高工作效率的目的。顾客可以进入图 书查询界面通过图书类别、图书名称、图书编号、折扣额度等四种方式查询图书,查到满意的图书后 可点击购买。管理者可以通过登录管理界面实现对图书的添加、修改、删除操作以及发货和查看顾客 信息,管理员可以维护客户注册信息、维护图书信息、处订定单信息、维护系统公告、网上售书。第二章系统分析 2.1需求分析2.1. 1系统需求书店管理系统需要满足来自三个方面需求:第一,书店工作人员通过计算机来管理各类图书,进 行图书分类编号,调整图书结构,增加图书库存,适应读者的需求。第二,工作人员对读者的需求情 况能
6、作好全面的掌握,及时得到历史销售记录。第三,也是书店的核心工作,对图书的销售管理。2.1.1功能需求基于系统需求分析,该系统需要实现以下基本功能:1、主界面管理本系统的使用用户分两种:管理员和顾客。管理员具有使用本系统的所有功能,而顾客需要具有 日常书店的管理功能即可。主界面中需要顾客注册、顾客登录和管理员登录和三个功能,可以分别进 入各自功能界面。2、添加功能新顾客可以通过此模块填写自己的各项信息。顾客可以通过此模块完成购卖书籍等操作。管理员 可以管理界面中输入书籍的各项信息。3、修改功能管理员可以通过次模块来管理各类图书信息,包括图书信息的修改。在进行图书的修改时,根据 用户选定的书进行修
7、改,即列出所有用户选定的信息,在这个基础上进行图书信息的修改。4、删除功能管理员可以通过此模块完成对图书信息的删除等操作5、查询功能通过查询功能,顾客可以对书籍按不同方式进行查询。管理员可以查询书籍的信息和销售情况。6、显示功能通过此功能,可以将所需信息显示的列表框中。便于顾客和管理员观察使用数据库。根据功能分析的结果,网上书店管理系统主模块图如图2.1所示。主页面管理添加功能修改功能删除功能查询功能显示功能网上书店管理系统图2.1系统主模块图2.2数据字典2.2.1 一数据项图书数据字典属性名存储代码类型长度备注书籍编号bnonchar10主码书籍类别bkindnchar20书籍名称bnam
8、enchar40书籍价格bpricenchar10书籍简介bintrovarchar80书籍折扣bdisint库存数量bstockint顾客数据字典属性名存储代码类型长度备注顾客编号cnoint主码顾客密码cpasschar10是顾客姓名cnamechar10否顾客性别csexchar10否顾客年龄cagechar10否顾客住址caddnchar20是联系电话cphonechar10是管理员数据字典属性名存储代码类型长度备注管理员登录名mnochar10主码管理员密码mpasschar10订单表数据字典属性名存储代码类型长度备注订单号onoint主码书籍编号bnonchar10顾客编号cnoi
9、nt顾客姓名cnamechar20顾客住址caddnchar10联系电话cphonechar10付款方式opaynchar10发货方式oconveynchar102.2.2数据结构数据结构名组成图书信息书籍编号、书籍类别、书籍名称、书籍价格、书籍简介、书籍折扣、 库存数量顾客信息顾客编号、顾客密码、顾客姓名、顾客性别、顾客年龄、顾客住址、 联系电话管理员信息管理员登录名、管理员密码订单表订单号、图书编号、顾客编号、顾客姓名、顾客地址、联系电话、 付款方式、发货方式2.3概念结构设计(ER图)根据对网上书店的需求分析,画出如下实体的ER图和实体之间的关系ER图。图2.2图书信息巳只图2.4逻辑结
10、构设计(关系模式-关系)下面是把上面E-R图转化关系模式(关系的码用下划线标出):图书(书籍编号、书籍类别、书籍名称、书籍价格、书籍简介、书籍折扣、库存数量) 顾客(顾客编号、顾客密码、顾客姓名、顾客性别、顾客年龄、顾客住址、联系电话) 管理员(管理员登陆名、管理员密码)订单表(订单号、书籍编号、顾客编号、顾客姓名、顾客住址、联系电话、付款方式、发货方式)第三章功能分析第四章系统实现4.1数据库连接本软件使用ODBC连接数据库,基本思想为为数据库中每个表建立一个RecordSet类, 当要对表中数据进行操作时,创建相关记录集,即可引用类中的响应函数进行添加、修改、 删除、查询等操作。4.2主界
11、面主界面中显示顾客登录、管理员登录和顾客注册三个按钮,顾客输入登录名和密码后点 击顾客登录后进入顾客查询界面,管理员输入登录名和密码后点击管理员登录后进入管理界 面,若是新顾客,直接点击注册即可进入注册界面,各对话框之间的连接通过DoModal()函 数实现,若需要进行身份验证,未输入用户名或密码则将弹出提示对话框“请输入用户名和 密码! ”,输入后系统将进入相应的数据库表查询是否有此信息,若无对应信息则弹出对话框 提示输入信息错误,信息正确方可进入下一界面,如顾客登录时,系统使用以下代码完成身 份验证功能,同时记录下用户信息以便加入订单:/生成查询用户账号和密码的SQL语句mSqlStr=
12、select * from customer where cno=”;mSqlStr=mSqlStr + m_no;mSqlStr=mSqlStr + and cpass=”;mSqlStr=mSqlStr + m_password;mSqlStr=mSqlStr + ;if(!customer.Open(AFX_DB_USE_DEFAULT_TYPE,mSqlStr)AfxMessageBox(customer 表打开失败!);return;if(!customer.IsBOF()/Open all function for userm_customer_no=customer.m_cno;
13、m_customer_name=customer.m_cname;m_customer_phone=customer.m_cphone;m_customer_add=customer.m_cadd;AfxMessageBox(密码正确,欢迎登录!);EndDialog(IDCANCEL);Cgkcx a;a.DoModal();elseAfxMessageBox(密码输入错误! !);return;4.3添加功能本软件的添加功能使用AddNew()函数,应用在顾客注册、顾客购书、管理员添加新书等 模块。顾客注册:新顾客在主界面中点击注册后即可进入注册界面填写自己的各项信息,完 成后点击确定,信
14、息添加到customer表中,并利用触发器自动生成顾客编号作为登录名。相 关代码如下:setcustomer c;c.Open();c.AddNew();UpdateData(TRUE);if(m_name.IsEmpty()|m_phone.IsEmpty()|m_add.IsEmpty()|m_password.IsEmpty()|m_mima.IsEmpty()MessageBox(请输入全部信息!);return;if(m_password!=m_mima)MessageBox(密码错误,请确认!);return;c.m_cpass=m_password;c.m_cname=m_nam
15、e;if(m_sex=0)c.m_csex=男”;else c.m_csex=女”;c.m_cage=m_age;c.m_cphone=m_phone;c.m_cadd=m_add;c.m_cpass=m_password;if(m_sex=0)c.m_csex=男”;else c.m_csex=女”;c.Update();c.Requery();m_customer_zhanghao=c.m_cno;UpdateData(FALSE);m_customer_xingming=m_name;m_customer_mima=m_password;EndDialog(IDCANCEL);Cxxqr
16、 a;a.DoModal();顾客购书:顾客在查询界面中选择想要购买的图书后点击购买可进入购买界面,选择付款方式、送货方式并确认后,相关信息添加到orders表中,并利用触发器自动生成订单号。 相关代码如下: Csetorders order;setbook book;order.Open();order.AddNew();UpdateData(TRUE);if(m_zhifu=0)order.m_opay=网银支付”;else order.m_opay=货到付款”;if(m_songhuo=0 )order.m_oconvey=快递”;else order.m_oconvey=EMS”;or
17、der.m_bno=m_book_no;order.m_cadd=m_customer_add;order.m_cname=m_customer_name;order.m_cno=m_customer_no;order.m_cphone=m_customer_phone;order.Update();order.Requery();m_order_no=order.m_ono;book.Open();book.Edit();book.m_bstock;book.Update();book.Requery();book.Close();UpdateData(FALSE);CString temp
18、;temp .Format(购买成功!);AfxMessageBox(temp);EndDialog(IDCANCEL);Cgkcx a;a.DoModal();管理员添加新书:管理员在管理界面中输入各项信息后点击添加,图示信息即可被添加到book表中,相关代码如下:setbook a,b;a.Open();AddNew();UpdateData(TRUE);if(m_no.IsEmpty()|m_kind.IsEmpty()|m_name.IsEmpty()|m_price.IsEmpty()|m_intro.I sEmpty()|m_dis=0|m_stock=0)MessageBox(请
19、输入全部信息!);return;if(b.IsOpen() b.Close();if(m_no!=_T()m_strFilter.Format(bno=%s,m_no);b.Open();if(b.m_bno!=_T()MessageBox(已经有这条记录了 !);return;a.m_bno=m_no;a.m_bkind=m_kind;a.m_bname=m_name;a.m_bprice=m_price;a.m_bintro=m_intro;a.m_bdis=m_dis;a.m_bstock=m_stock;CString aa,bb;m_list.InsertItem(0,a.m_bno
20、,0);m_list.SetItemText(0,1,a.m_bkind);m_list.SetItemText(0,2,a.m_bname);m_list.SetItemText(0,3,a.m_bprice);m_list.SetItemText(0,4,a.m_bintro);aa.Format(%d”,a.m_bdis);m_list.SetItemText(0,5,aa);bb.Format(%d”,a.m_bstock);m_list.SetItemText(0,6,bb);a.Update();a.Requery();UpdateData(FALSE);a.Close();4.4
21、修改功能修改功能使用Edit()函数,主要应用在管理员对图书信息的修改方面,其中图书编号不可 修改,若修改则出现错误提示,相关代码如下: setbook a;a.Open();a.Edit();UpdateData(TRUE);if(m_no.IsEmpty() MessageBox(请选择图书!);return;if(no!=m_no)MessageBox(图书编号不允许修改!);return;m_list.DeleteAllItems();a.m_bkind=m_kind;a.m_bname=m_name;a.m_bprice=m_price;a.m_bintro=m_intro;a.m_
22、bdis=m_dis;a.m_bstock=m_stock;CString aa,bb;m_list.InsertItem(0,a.m_bno,0);m_list.SetItemText(0,1,a.m_bkind);m_list.SetItemText(0,2,a.m_bname);m_list.SetItemText(0,3,a.m_bprice);m_list.SetItemText(0,4,a.m_bintro);aa.Format(%d”,a.m_bdis);m_list.SetItemText(0,5,aa);bb.Format(%d”,a.m_bstock);m_list.Set
23、ItemText(0,6,bb);a.Update();a.Requery();UpdateData(FALSE);Close();4.5删除功能删除功能使用Delete()函数,应用在管理员对图书信息的删除及查看订单后发货方面:图书信息删除:管理员查找到要删除的图书后选中,点击删除按钮即可将book表中 该图书信息删除,相关代码如下:UpdateData(TRUE);int n=m_list.GetSelectionMark();setbook b;if(m_no.IsEmpty()MessageBox(请选择图书!);return;m_strFilter.Format(bno=%s,m_n
24、o);b.Open();if(b.IsEOF()MessageBox(没有此记录!);return;b.Delete();m_list.DeleteItem(n);b.Close();发货:管理员查看订单后选中要发送的图书,点击发货即可在o rders表中将该订单删 除,相关代码如下:int n=m_list.GetSelectionMark();/创建订单记录集Csetorders order;if(m_ono.IsEmpty()MessageBox(请选择订单!);return;order.m_strFilter.Format(ono=%s,m_ono);order.Open();if(o
25、rder.IsEOF()MessageBox(没有此记录!);Return;while(!order.IsEOF()order.Delete();order.MoveNext();/关闭记录集order.Close();m_list.DeleteItem(n);UpdateData(FALSE);4.6查询功能查询功能应用于顾客购书前对书籍的查询和管理员对书籍的查询,以顾客查询为例,顾 客查询可按照图书编号、图书类别、图书名称、折扣额度等四种方式,其中图书类别和图书 名称都可实现模糊查询,在相关表中查找到正确信息后显示在列表框内,以图书名称和折扣 额度为例,相关代码如下:UpdateData(
26、TRUE);setbook book;if(m_fangshi!=0&m_fangshi!=1&m_fangshi!=2&m_fangshi!=3)AfxMessageBox(请选择查询类别!);return;/出现问题:不能读取m_kind,原因:IsEmpty()少了小括号if(m_fan gshi=1)if(m_name.IsEmpty()AfxMessageBox(请输入图书名称!);return;setbook book;if(book.IsOpen() book.Close();CString tmp;tmp.Format(%s% ”,m_name);m_name=tmp;book
27、.m_strFilter.Format(bname LIKE %s,m_name);book.Open();m_list.DeleteAllItems();int i=0; if(book.IsEOF()MessageBox(目前暂没有您要的书目!,提示,MB_OK);return;while(!book.IsEOF()CString aa,bb;m_list.InsertItem(i,book.m_bno,0);m_list.SetItemText(i,1,book.m_bkind);m_list.SetItemText(i,2,book.m_bname);m_list.SetItemTex
28、t(i,3,book.m_bprice);m_list.SetItemText(i,4,book.m_bintro);aa.Format(%d”,book.m_bdis);m_list.SetItemText(i,5 ,aa);bb.Format(%d”,book.m_bstock);m_list.SetItemText(i,6,bb);i+;book.MoveNext();if(m_fan gshi=3)if(m_dis=0)AfxMessageBox(请输入查询内容!);return;if(book.IsOpen() book.Close();book.m_strFilter.Format
29、(bdis=%d,m_dis);book.Open();m_list.DeleteAllItems();int i=0;if(book.IsEOF()MessageBox(目前暂没有您要的书目!, 提示,MB_OK);return;while(!book.IsEOF()CString aa,bb;m_list.InsertItem(i,book.m_bno,0);m_list.SetItemText(i,1,boo k.m_bkind);m_list.SetItemText(i,2,boo k.m_bname);m_list.SetItemText(i,3,boo k.m_bprice);m_
30、list.SetItemText(i,4,boo k.m_bintro);aa.Format(%d”,book.m_bdis);m_list.SetItemText(i, 5,aa);bb.Format(%d”,book.m_bstock);m_list.SetItemText(i,6,bb);i+;book.MoveNext();4.6显示功能在本软件中多次将信息显示在列表框中,以图书信息管理界面中显示图书信息为例,相 关代码如下:BOOL Cxsrk:OnInitDialog() CDialog:OnInitDialog();DWORD dwExStyle = LVS_EX_FULLROW
31、SELECT | LVS_EX_GRIDLINES |LVS_EX_HEADERDRAGDROP |LVS_EX_ONECLICKACTIVATE | LVS_EX_UNDERLINEHOT;m_list.SetExtendedStyle(dwExStyle);m_list.InsertColumn(0, 编号 ,LVCFMT_CENTER,50,0);m_list.InsertColumn(1, 类别 ,LVCFMT_CENTER,100,0);m_list.InsertColumn(2, 名称 ,LVCFMT_CENTER,200,0);m_list.InsertColumn(3, 价格,
32、LVCFMT_CENTER,60,0);m_list.InsertColumn(4, 简介 ,LVCFMT_CENTER,200,0);m_list.InsertColumn(5, 折扣 ,LVCFMT_CENTER,50,0);m_list.InsertColumn(6, 库存,LVCFMT_CENTER,50,0);setbook a;a.Open();int i=0;while(!a.IsEOF() CString aa,bb;m_list.InsertItem(i,a.m_bno,0);m_list.SetItemText(i,1,a.m_bkind);m_list.SetItemTe
33、xt(i,2,a.m_bname);m_list.SetItemText(i,3,a.m_bprice);m_list.SetItemText(i,4,a.m_bintro);aa.Format(d,a.m_bdis);m_list.SetItemText(i,5,aa);bb.Format(d,a.m_bstock);m_list.SetItemText(i,6,bb);i+;a.MoveNext();a.Close();return TRUE; / return TRUE unless you set the focus to a control第五章 调试过程中的问题及系统测试情况5.
34、1主界面展示主界面如下图4.1所示,有“顾客登录”,“管理员登录”和“现在注册”三个按钮:图5.1主界面MJ简桥13J -不但尊主市草斐习有煎茬君,琳顼- I, 18.? . B顾客输ip繇於T _ ail 世界骚.崖梅叫谒涌等之辂“-己炬E.E碱* -fiSjES!入正确的登录名和密码后点击确定即可进入顾客查询界面,如下图5.2所示:*铭夫图毛电作EWTil,.玲入罔制a司.J将示全军段俏述悻折到管理员输入正确的登5.3所示:新顾客点击地址再次输入胡码确定姓名住别赖入密殆5字节以内)即可进入注册界面,如下图5.4弓后点击购买,即入购买图书界面,5.2添加功能展示5.2.1顾客注册顾客在如上图4.4所示的顾客注册界面中输入各项信息且两次输入相同密码后点击确定,系统自动生成顾客编号作为登录名,和密码等显示给顾客,如下图5.5所示:5.5注册信息确认界面5.2.2顾客购书 顾客在如图4.3月 确认图书并选择付图5.6购买图书界面5.2.3 添加新书 管理员
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45097.3-2024智能消费品安全第3部分:风险控制
- YC/T 398-2024烟草商业企业物流现场管理规范
- 2025版工业4.0项目厂房收购合同样本3篇
- 航空航天碳资产管理办法
- 矿山工程招投标法规实务讲解
- 桥梁质量检测协议
- 2024年度地板企业竞业禁止协议范本3篇
- 企业重组顾问聘用协议模板
- 私募基金资金流动规则
- 畜牧养殖保证人担保承诺书
- 2024年省内江市东兴区公办学校考调教师67人(高频重点提升专题训练)共500题附带答案详解
- 幼儿园安全教育课件:生水喝不得
- 《第一节 生活方式对健康的影响》教学设计教学反思-2023-2024学年高中体育与健康人教版全一册
- 技能成才强国有我课件模板
- 2023-2024学年冀教版数学四年级上册期末试题 ( 有答案 )
- 幽门螺杆菌科普
- “双减”背景下小学数学“教、学、评”一体化的思考与实践
- 2024人美版高中美术学业水平考试知识点归纳总结(复习必背)
- 中外美术评析与欣赏智慧树知到期末考试答案章节答案2024年湖南大学
- 绞股蓝的人工栽培与种质资源保护
- 事业单位考试《综合知识和能力测试》试卷
评论
0/150
提交评论