轿车销售系统_第1页
轿车销售系统_第2页
轿车销售系统_第3页
轿车销售系统_第4页
轿车销售系统_第5页
免费预览已结束,剩余16页可下载查看

下载本文档

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

文档简介

1、目 录前 言21课程设计概述31.1数据库系统功能概述31.2数据库运行环境SQL SERVER42总体设计42.1轿车销售信息管理系统总体设计思想42.2总体设计流程图53轿车销售系统详细设计63.1数据库6数据库的建立6存储过程6触发器8创立数据源93.2C+中MFC应用程序编程10Crecordset类的插入10修改、添加和显示记录124程序测试144.1登录界面144.2菜单界面154.3Custormers buy Cars界面164.4Add New Customer界面174.5Memberinformation界面174.6Add User界面184.7input Car界面1

2、85课程设计总结19致谢20参考文献21前 言计算机在二十一世纪成为人们常用的现代工具,每一个有文化的人都应当了解计算机,学会使用计算机来处理面临的事务。程序设计是软件工作人员的根本功能,但前提必须有较为完善的数据库系统来实现数据的各种操作。数据库研究跨越于计算机应用、系统软件和理论三个领域,其中应用促进新系统的研制开发,新系统带来新的理论研究,而理论研究又对前两个领域起着指导作用。数据库系统的出现是计算机应用的一个里程牌,它使得计算机应用从以科学计算为主转向以数据处理为主,并从而使计算机得以在各行各业乃至家庭普遍使用。在它之前的文件系统虽然也能处理持久数据,但是文件系统不提供对任意局部数据的

3、快速访问,而这对数据量不断增大的应用来说是至关重要的。对任意局部数据的快速访问由系统软件数据库管理系统来完成,而提供应用户的是简单易用的数据库语言。由于对数据库的操作都由数据库管理系统完成,所以数据库就可以独立于具体的应用程序而存在,从而数据库又可以为多个用户所共享。因此,数据的独立性和共享性是数据库系统的重要特征。数据库系统的出现使得普通用户能够方便地将日常数据存入计算机并在需要的时候快速访问它们,从而使计算机走出科研机构进入各行各业、进人家庭。本文档详细表达了基于Visual C+6.0环境下的用ODBC与SQL SERVER相连的轿车销售信息管理系统的设计过程以及程序源代码。本文档从概要

4、设计,详细设计,参考源程序代码以及显示程序运行的截屏等方面详尽的介绍了软件开发过程。此次轿车销售信息管理系统的开发目的是使我们用面向对象的方式来思考和解决问题的能力,提高数据库的应用能力。本文档的安排如下:第一章 主要介绍了数据库系统以及SQL SERVER操作环境。第二章 主要的介绍说明了轿车销售信息管理系统的编程思想和详细设计。第三章 主要对轿车销售信息管理系统进行调试,运行程序并截图,显示运行界面和结果。第四章 主要介绍了软件开发过程中遇到的一些问题,对该软件进行的一个总结。程序在设计的过程中遇到的问题已及时更正,但由于编者的能力和水平有限,字符统计软件和文档中不免会出现一些不期待的错误

5、,望文档读者能够理解和体谅,并欢送提醒和纠正,在此表示感谢以及敬意。1 课程设计概述1.1 数据库系统功能概述数据库系统database systems,是由数据库及其管理软件组成的系统。它是为适应数据处理的需要而开展起来的一种较为理想的数据处理的核心机构。它是一个实际可运行的存储、维护和应用系统提供数据的软件系统,是存储介质、处理对象和管理系统的集合体。数据库系统的主要特点有:(1) 能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。(2) 冗余数据少,数据共享程度高。(3) 系统的用户接口简单,用户容易掌握,使用方便。(4) 能够确保系统运行可靠,出现故障时能迅

6、速排除;能够保护数据不受非受权者访问或破坏;能够防止错误数据的产生,一旦产生也能及时发现。(5) 有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户操作特性的变化,改善由于频繁插入、删除操作造成的数据组织零乱和时空性能变坏的状况。(6) 具有可修改性和可扩充性。(7) 能够充分描述数据间的内在联系。这些新特性可以更好地利用Visual C+开发工具进行Windows应用程序开发。1.2 数据库运行环境SQL SERVER图 1-1 SQL2000运行环境2 总体设计2.1 轿车销售信息管理系统总体设计思想轿车销售信息管理系统的功能为提供轿车信息,员工信息,客户信息,轿车销售信

7、息,按条件查询,并将销售报表打印输出。轿车销售信息管理系统的功能模块有:1提供成员登录及顾客查看轿车界面,输入用户名及密码进入成员系统。2提供菜单界面,方便用户对程序个功能进行选择,选择要实现的功能按3按条件查询库存轿车信息及客户购置信息,并将销售报表打印输出。4接受用户输入的客户信息完成注册,并且可以对员工信息进行添加删除修改等操作,根据轿车的类型及颜色查询轿车信息。程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。2.2 总体设计流程图BeginSell CarInput CarMember InfoAdd CustomerAdd new loginMember LoginC

8、ustomerCheck Car图21 总体设计流程3 轿车销售系统详细设计3.1 数据库3.1.1 数据库的建立此次课程设计主要需要用到数据库,因此,需要对数据库的建立要有一定的了解。利用SQL server建立数据库。建立了图书馆管理系统数据库,来提供一些信息。完成如新建表及视图、关系等根本操作图3-1 数据库3.1.2 存储过程存储过程Stored Procedure是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数如果该存储过程带有参数来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。图3-2

9、存储过程存储过程的代码:存储过程s:create proc sno char(4)asdeletefrom Memeberinformationwhere no=mebnumGO存储过程CarStoreinfoinsertCREATE PROCEDURE CarStoreinfoinsert ASinsert into Storeinformation(carnum,amount)select Buyinformation.carnum,buyamoufrom Buyinformation,Storeinformationwhere Storeinformation.carnum not in

10、 (select carnum from carinformation)GO在C+中的调用代码: CDatabase db; db.Open(_T("SellCar");db.ExecuteSQL("exec s '"+m_num+"'");/调用存储过程并传递参数db.Close();3.1.3 触发器触发器trigger是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比方当对一个表进行操作 insert,delete, update时就会激活它执行。触发器经常用于加强数据的完整性约束和

11、业务规那么等。图3-3触发器3.1.4 创立数据源此次课程设计用ODBC语言将数据库与C+连接,在连接之前应创立数据源。在控制面板上翻开管理工具,可以找到数据源ODBC,添加数据源,可以创立不同类型的数据库,此次设计用到了SQL Server,便选择其,翻开SQL Server中的效劳管理器可找到效劳器的名称,将默认数据库改为自己的数据库。点下一步直至完成。图3-4 创立数据源3.2 C+中MFC应用程序编程3.2.1 Crecordset类的插入CRecordset类代表一个记录集该类是MFC的ODBC类中最重要、功能最强大的类。一般需要用ClassWizard创立一个CRecordset的

12、派生类 CRecordset类的插入过程:图3-5 新建记录集类图3-6 数据库连接方式及数据源 此程序用ODBC连接数据库,选择SellCar为数据源,记录集类型为动态集。动态集提供了数据的动态视当用户修改或删除了记录集中的记录时,会在动态集中反映出来:当滚动到修改正的记录时对其所作的修改会立即反映到动态集中,当记录被删除时,MFC代码会跳过记录集中的删除局部对于其它用户添加的记录,直到调用Requery时,才会在动态集中反映出来。本身应用程序对记录的修改、添加和删除会反映在动态集中。当数据必须是动态的时侯,使用动态集是最适合的图3-7 选择数据库中的表ClassWizard可以为派生的记录

13、集类创立一批数据成员,这些数据成员与记录的各字段相对应,被称为字段数据成员或域数据成员。如图:图3-8 字段数据成员3.2.2 修改、添加和显示记录1. 显示记录集用CRecordset类将数据库中的数据在C+中显示出来Ccustom m;/ Ccustom是一个与表Memeberinformation相连的记录集类m.Open();int n=0;while(!m.IsEOF() CString s; m_List.InsertItem(n,m.m_mebnum); m_List.SetItemText(n,1,m.m_name); m_List.SetItemText(n,2,m.m_se

14、x); s.Format("%d",m.m_age); m_List.SetItemText(n,3,s); m_List.SetItemText(n,4,m.m_address); m_List.SetItemText(n,5,m.m_edulevel); m.MoveNext(); n+; m.Close();2. 修改记录集要修改当前记录,应该按以下步骤进行:调用Edit成员函数调用该函数后就进入了编辑模式,程序可以修改域数据成员不能在一个空的记录集中调用Edit,否那么会产生异常Edit函数会把当前域数据成员的内容保存在一个缓冲区中,调用Move(AFX_MOVE_

15、REFRESH)或Move(0)可退出编辑模式(AFX_MOVE_REFRESH的值为0),同时该函数会从缓冲区中恢复域数据成员设置域数据成员的新值;调用Update完成编辑Update把变化后的记录写入数据源并结束编辑模式修改记录的代码如下: Ccustom g; g.m_strFilter.Format ("mebnum='%s'",m_num); g.Open (); g.Edit ();if(m_na!=_T("") g.m_mebnum=m_num; g.m_name=m_na; g.m_sex=m_sex; g.m_age=m

16、_age; g.m_address=m_add; g.m_edulevel=m_edu; g.Update (); UpdateData(FALSE); g.Requery(); g.Close (); MessageBox("Modify ok");3. 添加记录要向记录集中添加新的记录的步骤与修改类似,添加记录的代码:Ccustom n; n.Open();n.AddNew();if(m_na!=_T("") n.m_mebnum=m_num; n.m_name=m_na; n.m_sex=m_sex; n.m_age=m_age; n.m_addr

17、ess=m_add; n.m_edulevel=m_edu; n.Update(); /更新数据表n.Requery(); /更新记录集 n.Close();4 程序测试4.1 登录界面图41 登录界面如上图所示,该程序为用户提供登录界面,用户可以对程序的各种功能进行选择,方便用户使用。单击要选择的按钮进行操作。 4.2 菜单界面图42 员工菜单界面图4-3 顾客查看车信息4.3 Custormers buy Cars界面图44 Custormers buy Cars界面4.4 Add New Customer界面图45 Add New Customer界面4.5 Memberinformat

18、ion界面图46Memberinformation界面4.6 Add User界面图47 Add User界面4.7 input Car界面图48 input Car界面5 课程设计总结为了提高我们的实践能力,让我们学以致用,能灵活运用所学的知识进行再创造,学校特安排我们进行为期二周的数据库课程设计实习,并安排了指导老师帮助辅导,让我们在标准化、严谨化、实用化上面有了很大进展。在此次字符统计程序开发过程中,有很多东西值得我们思考并总结。开发过程大体可分为以下几个步骤:1思考总体设计方案:总体结构和模块外部设计,功能分配。思考要实现整个程序大体需要的几个模块和其中用到的SQL 语言根本操作符、语

19、句等。2画出总体设计方案流程图:用流程图的形式展现你的根本编程思想。3流程图具体化:即将流程图中的几大模块的具体实现思考清楚,可以用流程图的形式展现并想好实现的关键代码。4编辑程序代码:这是一个至关重要复杂而且需要反复修改的环节,在此环节中你将发现总体设计和模块思想会存在很多问题,需不断改良如何实现各函数功能,到达预期效果也将是一项繁复的工作。5代码的调试:在Visual C+6.0环境下输入代码并进行调试和正确运行。在调试过程中会遇到很多需要精化的地方,需要十足的耐心与细心,不断改良完善程序。6最后修饰:程序可以正确运行之后,再不影响程序功能的情况下,运用各种辅助性符号,使界面更加美观漂亮,操作更人性化增强程序的新意与可行性。总之,在通过真正动手之后,我们在数据库的设计和有关它与c+结合的操作方面都获益匪浅,但离真正的数据库设计实施还有相当大的距离和差距。但是,必须指出的是我们在此次课程设计中,的确实确学到了不少东西。同时,我认为在进行软件设计的过程中,必须考虑到很多综合的因素,必须加以自己的创新,只有这样才能让自己设计的东西得到认可。通过这次课程设计,使我们更加熟悉的掌握了数据库系统的运用。帮助我们熟悉了更多数

温馨提示

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

评论

0/150

提交评论