1、商品销售系统的设计与实现毕业论文商品销售系统的设计与实现毕业论文目录第一章 绪 论1.1 系统概述现代是个充斥着信息的时代,而计算机在这个时代扮演者重要的角色,而其中对于信息的管理的要求尤为突出,它已经渗透到了各个领域。同样,在学校和老师也要能够对学生的信息进行第一时间的掌握和管理,因此对于学生信息的管理进行系统化是刻不容缓的。本学生信息管理系统可以说是一个综合性的信息管理系统,它集成了班级信息管理、课程信息管理、学生档案管理、学生成绩管理等多种功能,因此具有很高的实用性和先进性。1.2 数据库概述Access提供了真正的关系数据库管理。Access具有主关键字和外部关键字定义,并且在数据库的
2、引擎提供了完全的引用完整性,可以避免不合理的更新和删除。Access 就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Access 的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于 Excel 的电子表格,可以使数据库一目了然。另外,Access 允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他网络用户共享数据库。Access 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,Access 作为关系数据库开发具备了许多优点,可以在一个数
3、据包中同时拥有桌面数据库的便利和关系数据库的强大功能。1.3 Visual Basic 6.0概述Microsoft Visual Basic6.0提供了开发Microsoft Windows应用程序的最迅速、最简捷的方法。”Visual”的意思是“可视化程序设计”,指的是开发图形用户界面的方法。使用这种方法,用户不需要编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象拖放到屏幕上的一点即可。”Basic”指的是BASIC语言,它是一种在计算机技术发展历史上应用得最为广泛的语言。VB在原有BASIC语言的基础上进一步发展,至今包含了数百条语句、函数及关键词,其中很多和Windows
4、 GUI有直接关系第二章 系统分析2.1系统功能分析学生信息管理系统是对在校学生的全方位的信息进行管理的系统。设计学生信息管理系统的目的主要是提高学生信息管理的效率、减少相关人员的工作量,让学生信息管理更加便捷、更加科学。做到系统、规范、高效的信息管理原则。 学校和老师可以添加和管理班级信息、添加和管理课程信息、添加和管理学生的档案信息、添加和管理学生的成绩信息,也可以对个别班级和同学的信息进行查询,根据不同条件对学生的成绩信息进行查询。从而从点到面全方位的掌握学生的信息。学生信息管理系统的主要功能如下:1.添加、修改、删除班级信息2.添加、修改、删除课程的种类3.添加、修改、删除每个班所上课
5、程的信息4.添加、修改、删除和查询学生的档案信息5.添加、修改、删除和查询学生的成绩信息2.2 系统功能模块设计根据系统所要实现的功能,按照结构化程序设计的原则,将系统划分为如图所示的系统功能模块图。图2-12.2.1系统登录流程图下面介绍一下登录模块的流程,当用户进入程序时,系统会自动转入登录界面,同时系统将数据库中存储的所有用户名调出到用户名下拉菜单,用户选择自己所用的用户名,并输入对应的密码后点击登录,如果对应的密码正确,将进入系统的主页面,如果错误,则会出现错误提示。图2-22.22 用户管理模块流程图下面来介绍一下用户管理模块的流程,当用户打开用户管理面板时,用户可以看到列表中的所有
6、的用户名,通过点击添加、修改、删除块来切换面板来执行用户所需要的操作。图2-32.2.3 班级管理模块流程图下面来介绍一下班级管理模块的流程,班级管理模块是由班级管理和课程管理两个子模块构成,当打开班级管理界面时,可以通过点击添加、修改、删除切换面板来完成用户所需的对班级信息的管理。当打开班级课程界面时,可以添加、删除、课程,也可以为班级设置所需上的课程,删除已经结课的课程。图2-4图2-52.2.4 学生档案管理模块流程图下面来介绍一下学生档案管理模块的流程,用户在打开档案管理界面时,可以通过点击添加、查询、修改、删除块来切换应用功能,从而实现用户的使用要求。默认是查询功能,当查询条件为空是
7、,默认预览全部学生档案资料,显示在列表中。用户还可以根据不同的条件对学生档案进行查询操作。当点击列表中的某个学生的信息时,这个学生的信息会自动显示在修改、删除的栏目内。图2-62.2.5 成绩管理模块流程图下面介绍一下成绩管理模块的流程,当用户打开成绩管理界面的后,可以通过对单选按钮的选择,来切换添加、查询、修改和删除的功能。同学生档案管理模块相似,查询条件为空时,默认预览所有成绩资料,显示在列表中。当点击列表中的某条成绩信息时,这条成绩信息也会自动显示在修改和删除的栏目中。 图2-72.3 数据库设计2.3.1 需求分析在学生信息管理系统操作流程分析的基础上,下面列出了学生信息管理系统的数据
8、项和数据结构。1.系统用户信息:用户名、密码。2.课程信息:课程名、备注。3.班级信息:班级编号、班主任、学生人数、备注。4.班级课程信息:班级编号、课程名。5.学生信息:学号、姓名、性别、年龄、班级、出生日期、联系电话、家庭住址、备注。6.学生成绩信息:成绩编号、考试期号、学生班号、学号、考试课程、考试成绩。第三章 系统设计阶段3.1数据库概念结构设计得到上面的数据项和数据结构,就可以满足用户所需的各种信息的实体需求,以及它们之间的关系,为后面的的逻辑结构打下基础。根据上面的数据项和数据结构规划出的实体有:班级信息实体、班级课程实体、学生档案实体、学生成绩实体。具体实体的实体描述E-R图如下
9、:班级信息实体E-R图:图3-1班级课程实体E-R图: 图3-2学生档案实体E-R表:图3-3学生成绩实体E-R表: 图3-43.2 数据库逻辑结构设计有E-R图便是的概念模型,可以表示为任何一种数据库管理系统(DBMS)所支持的数据模型,并进行规范化,减少冗余信息。根据设计的图书管理系统的E-R图,设计的关系模式在access 2003 中实现,新建数据库名为studentmessage.mdb。关系模式(表) 表3-1 系统用户表列名数据类型可否为空说明用户名文本(20)否主键密码文本(20)是表3-2班级表列名数据类型可否为空说明班级编号文本(50)否主键班主任文本(50)否 学生人数文
10、本(50) 否 备注 文本(50) 是表3-3课程表列名数据类型可否为空说明课程名文本(50)否主键备注文本(50)是表3-4 班级课程表列名数据类型可否为空说明班级编号文本(50)否主键课程名文本(50)否表3-5 学生信息表列名数据类型可否为空说明学号文本(50)否主键姓名文本(50)否性别文本(50)否年龄文本(50)否班级文本(50)否出生日期日期否联系电话文本(50)否 家庭地址 文本(50) 否 备注 文本(50) 否表3-6 学生成绩表列名数据类型可否为空说明成绩编号文本(50)否主键考试期号文本(50)否学生班号文本(50)否学号文本(50)否考试课程文本(50)否考试成绩文本
11、(50)否3.3用户界面设计当今软件界的所有软件无不是可视化的用户界面,它的好处不外乎它有美观、直接、操作者易懂和操作方便等好处。本系统设计思想:“为用户设计,而不是设计者”本系统设计原则:1 界面美观、操作方便并能高效率地完成工作。 2 界面根据用户需求设计。 3 界面能引导用户操作的功能,并能提供一些帮助功能。 1.登录界面图3-11相关代码:Option ExplicitDim pwd As StringDim rsUser As ADODB.RecordsetPrivate Sub Combo1_Click()Dim sql As StringSet rsUser = New ADOD
12、B.RecordsetIf rsUser.State = 1 Then rsUser.Closesql = SELECT 密码 FROM 系统用户表 WHERE 用户名= & Combo1.Text & rsUser.Open sql, conn, adOpenStatic, adLockPessimistictxtpwd.SetFocuspwd = Trim(rsUser.Fields(密码)rsUser.CloseEnd SubPrivate Sub Command1_Click()If Combo1.Text = Then MsgBox 请选择用户名!, , 登录 Combo1.SetF
13、ocus Exit SubEnd IfIf txtpwd.Text = Then MsgBox 请输入密码!, , 登录 txtpwd.SetFocus Exit SubEnd IfIf txtpwd.Text = pwd Then userID = Combo1.Text conn.Close Me.Hide MDIForm1.ShowElse MsgBox 密码无效,请重试!, , 登录 txtpwd.SetFocusEnd IfEnd SubPrivate Sub Command2_Click()EndEnd SubPrivate Sub Form_Load()Dim cnnstr As
14、 StringDim sql As StringSet rsUser = New ADODB.Recordsetcnnstr = provider=microsoft.jet.oledb.4.0; & data source= & App.Path & /Data/studentmessage.mdbconn.Open cnnstrsql = SELECT 用户名 FROM 系统用户表rsUser.Open sql, conn, adOpenStatic, adLockPessimisticCombo1.ClearDo Until rsUser.EOF Combo1.AddItem rsUse
15、r.Fields(用户名) rsUser.MoveNextLoop rsUser.CloseEnd Sub1.主页面的子窗体图3-12相关代码:Dim i As LongPrivate Sub Form_Load()Label1.ForeColor = &H8000000E Label1.FontSize = 12 Label1.AutoSize = TrueEnd SubPrivate Sub Form_Resize()Image1.Top = 0 Image1.Left = 0 Image1.Height = Me.Height Image1.Width = Me.Width Image2
16、.Top = Me.Height - Image2.Height Image2.Left = Me.Width - Image2.Width Label1.Top = Me.Height - Label1.Height - 100End SubPrivate Sub Timer1_Timer()i = i + 50 Label1.Left = Me.Width - i If i Me.Width + Label1.Width Then i = Image2.Width End IfEnd Sub2.主页面图3-13相关代码:Private Sub chengji_Click()Form6.Sh
17、owEnd SubPrivate Sub class_Click()Form3.ShowEnd SubPrivate Sub dangan_Click()Form5.ShowEnd SubPrivate Sub denglu_Click()Form1.ShowUnload MeEnd SubPrivate Sub jiangcheng_Click()Form7.ShowEnd SubPrivate Sub kecheng_Click()Form4.ShowEnd SubPrivate Sub MDIForm_Load()StatusBar1.Style = sbrSimpleTimer1.In
18、terval = 1000dColor.ShowEnd SubPrivate Sub MDIForm_Resize()If Me.Height 1100 Then dColor.Height = Me.Height - 1100 End If If Me.Width 180 Then dColor.Width = Me.Width - 180 End IfEnd SubPrivate Sub Timer1_Timer()StatusBar1.SimpleText = Date & & TimeEnd SubPrivate Sub tuchu_Click()EndEnd SubPrivate S
19、ub tuichu_Click()EndEnd SubPrivate Sub user_Click()Form2.Show4用户管理界面图3-14图3-15图3-16相关代码:Dim mrc As ADODB.RecordsetPrivate Sub Command1_Click() Dim txtSQL As String Dim c As String If Text1(0) = Then MsgBox 用户名不能为空!, vbOKOnly, 提示 Text1(0).SetFocus Exit Sub End If If Text1(1) = Then MsgBox 用户密码不能为空!,
20、vbOKOnly, 提示 Text1(1).SetFocus Exit Sub Else If Text1(2).Text Text1(1).Text Then MsgBox 两次输入的密码不一样,请重新输入!, vbOKOnly, 提示 Text1(1).Text = Text1(2).Text = Text1(1).SetFocus Exit Sub End If End If txtSQL = select * from 系统用户表 Set mrc = New ADODB.Recordset c = provider=microsoft.jet.oledb.4.0; & data sou
21、rce= & App.Path & /Data/studentmessage.mdb conn.Open c mrc.Open txtSQL, conn, adOpenStatic, adLockPessimistic mrc.AddNew mrc.Fields(0) = Trim(Text1(0) mrc.Fields(1) = Trim(Text1(1) mrc.Update mrc.Close conn.Close For i = 0 To 2 Text1(i) = Next MsgBox 用户信息添加成功!, vbOKOnly, 提示 ListappEnd SubPrivate Sub
22、 Command2_Click() Text1(0) = Text1(1) = Text1(2) = End SubPrivate Sub Command3_Click() Dim txtSQL As String Dim co As String Set mrc = New ADODB.Recordset If Text1(3) = Then MsgBox 请你选择用户名称!, vbOKOnly, 提示 List1.SetFocus Exit Sub End If If Text1(4) = Then MsgBox 修改密码需要旧密码!, vbOKOnly, 警告 Text1(4).SetF
23、ocus Exit Sub End If If Text1(5) = Then MsgBox 新的密码不能为空!, vbOKOnly, 提示 Text1(5).SetFocus Exit Sub Else If Text1(5) Text1(6) Then MsgBox 两次密码输入不同!, vbOKOnly, 提示 Text1(5) = Text1(6) = Text1(5).SetFocus Exit Sub End If End If co = provider=microsoft.jet.oledb.4.0; & data source= & App.Path & /Data/stud
24、entmessage.mdb conn.Open co txtSQL = select * from 系统用户表 where 用户名= & Trim(Text1(3) & and 密码= & Trim(Text1(4) & mrc.Open txtSQL, conn, adOpenStatic, adLockPessimistic If mrc.EOF = False Then txtSQL = delete from 系统用户表 where 用户名= & Trim(Text1(3) & Else MsgBox 用户密码输入错误!, vbOKOnly, 警告 Text1(4).SetFocus
25、 Exit Sub End If conn.Close conn.Open co mrc.Open txtSQL, conn, adOpenStatic, adLockPessimistic txtSQL = select * from 系统用户表 mrc.Open txtSQL, conn, adOpenStatic, adLockPessimistic mrc.AddNew mrc.Fields(0) = Trim(Text1(3) mrc.Fields(1) = Trim(Text1(5) mrc.Update mrc.Close conn.Close For i = 3 To 6 Te
26、xt1(i) = Next MsgBox 用户信息修改成功!, vbOKOnly, 提示End SubPrivate Sub Command4_Click() Text1(3) = Text1(4) = Text1(5) = Text1(6) = End SubPrivate Sub Command5_Click() Dim txtSQL As String Dim co As String If Text1(7).Text = Then MsgBox 请您选择用户名称, vbOKOnly, 提示 Text1(7).SetFocus Exit Sub Else If Text1(7) = Us
27、erName Then MsgBox 不可一删除正在使用的用户!, vbOKOnly, 提示 Text1(7).Text = Text1(7).SetFocus Exit Sub End If End If If Text1(8) = Then MsgBox 删除用户需要密码!, vbOKOnly, 提示 Text1(7).SetFocus Exit Sub End If Set mrc = New ADODB.Recordset co = provider=microsoft.jet.oledb.4.0; & data source= & App.Path & /Data/studentme
28、ssage.mdb conn.Open co txtSQL = select * from 系统用户表 where 用户名= & Trim(Text1(7) & and 密码= & Trim(Text1(8) & mrc.Open txtSQL, conn, adOpenStatic, adLockPessimistic If mrc.EOF = False Then txtSQL = delete from 系统用户表 where 用户名= & Trim(Text1(7) & Else MsgBox 用户密码输入错误!, vbOKOnly, 警告 Text1(8).SetFocus Exit Sub End If conn.Close conn.Open co mrc.Open txtSQL, conn, adOpenStatic, adLockPessimistic conn.Close Text1(7) = Text1(8) = MsgBox 用户信息已经删除!, vbOKOnly, 提示 ListappEnd SubPrivate Sub Command6_Click() Text1(7) = Text1(8) = End SubPriv
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1