客户信息管理系统课程设计.docx
- 文档编号:1177656
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:11
- 大小:101.23KB
客户信息管理系统课程设计.docx
《客户信息管理系统课程设计.docx》由会员分享,可在线阅读,更多相关《客户信息管理系统课程设计.docx(11页珍藏版)》请在冰豆网上搜索。
客户信息管理系统课程设计
客户信息管理系统课程设计
数据库及其应用Ⅱ课程设计报告
客户信息管理系统
指导老师:
报告撰写:
一、设计的主要目的
1.经过实践,使学生建立对数据库设计的认知;
2.经过对某小型信息系统的数据库的设计,使学生掌握数据库设计的主要步骤和方法,提升学生解决实际问题的能力;
3.使学生学会在一个实际的RDBMS软件平台上创立数据库;
4.培养学生的团队合作精神。
二、主要内容和要求
1.根据所选择题目,进行调查分析
2.在调查分析的基础上,进行数据库设计
3.在SQL Server 上创立数据库,并结合VB6.0实现设计结果
4.撰写数据库设计各个阶段的详细设计报告
5.写出收获和体会,包括以解决和尚未解决的问题,进一步完善的设想与建议
三、设计组织安排
设计时间:
设计班级:
设计分组:
设计报告提交:
四、成员情况
五、数据库分析与设计
需求说明
要实现一个客户信息管理系统,在此系统中只涉及到对客户和管理员两个实体的管理,此系统要求能够记录客户的基本信息和信息的查询。
经过对客户的具体数据的管理,这样能够更好地实现任何企业及活动单位VIP会员的加入并确保其身份的真实、安全性。
其系统的具体要求如下:
1.客户基本信息的录入、添加或删去
2.对客户基本信息任意条件查找
3.客户基本信息表的打印
4.系统用户的设置
5.系统初始化
数据库结构设计
(1)概念结构设计
现在对上述需求做进一步的分析,产生概念结构设计的E—R模型。
由于这个系统比较简单,因此就采用自顶向下的设计方法,就是首先确定系统的核心活动:
查询功能。
对于管理员和客户之间,便是经过查询发生联系的。
至此,本系统包含的实体有:
客户——用于描述一名客户的基本信息,以姓名来标识
管理员——用于描述一名管理员的基本信息,以用户名来标识
由于一名管理员能查找多名客户信息,而且一名客户信息能被多个管理员查找。
因此,管理员和客户之间的联系是多对多的。
其基本E—R模型如下图:
(2)逻辑结构设计
根据转换规则,这个E—R模型转换的关系模式为:
客户(姓名,性别,生日,年龄,手机号码,职务,所在单位,家庭住址,固定电话,兴趣爱好)
管理员(用户名、管理级别)
最后根据关系模式建立相应的kh表和oper表
(3)数据库行为设计
1.安全设置:
其管理员具有操作系统的全部权限
2.数据操作功能:
包括对数据的录入、删除、修改功能
3.生成报表:
kh表(姓名,性别……),oper表(用户名……)
六、设计答辩部分
(1)系统结构流程图:
(2)设计方法
首先经过登录窗口
主要代码部分:
PrivateSubCommand1_Click()
DimmrcAsAdodb.Recordset
txtsql"select*fromoperwhere用户名='"&Trim$(Text1(0).Text)&"'"&"and口令='"&Trim$(Text1
(1).Text)+"'"
Setmrc=exesql(txtsql)
Ifmrc.RecordCount=0Then
n=n+1
Ifn<3Then
MsgBox"没有这个用户,继续登录",vbOKOnly+vbExclamation,"信息提示"
Text1(0).Text=""
Text1
(1).Text=""
Text1(0).Setfocus
Else
MsgBox"登录失败三次,退出系统",vbOKOnly+vbExclamation,"信息提示"
mrc.Close
UnloadMe
EndIf
Else
userlevel=tram(mrc.Fields("级别"))
mrc.Close
UnloadMe
main.ShowvbModal
EndIf
EndSub
其中有不满足登录条件重新登录,失败三次退出系统的设计
登录后即进入主菜单
PrivateSubForm_Load()
Ifuserlevel<>"系统管理员"Then
Command3.Enabled=False
Command4.Enabled=False
EndIf
EndSub
PrivateSubCommand1_Click()
edkh.ShowvbModal”编辑客户按钮”连接edkh编辑窗体
EndSub
PrivateSubcommand2_click()
qukh.ShowvbModal”查询客户按钮”连接qukh查询窗体
EndSub
PrivateSubCommand3_Click()
setuser.ShowvbModal
EndSub
以下为”系统初始化”设计
PrivateSubCommand4_Click()
IfMsgBox("本功能要清除系统中所有的数据,真的要初始化吗?
",vbYesNo,"确认初始化操作")=vbYesThen
Calldeldata("khb")清除客户表中全部信息
Calldeldata("oper")清除oper表中全部信息
MsgBox"系统初始化完毕,下次只能显示以1234/1234(用户名/口令)进入本系统",vbOKOnly,"信息提示"
EndIf
EndSub
PrivateSubCommand5_Click()
UnloadMe
EndSub
编辑窗体设计
以客户表为例进行说明,为了编辑其记录,设计了edkh(编辑客户)窗体,在DataGrid中显示所有以输入的客户记录。
用户能够经过”设置记录”框查找相应的客户记录,然后单击”修改”或”删除”按钮,对客户记录进行修改或删除的操作,或单击”添加”按钮输入新的客户记录。
点击”添加会员”
此部分由李健完成设计
任意条件查询代码设计
以qukh表为例,用户输入的客户部分信息对客户进行查找。
只需在qukh窗体中输入个别经过构造条件表示式,实现在VB中输入的数据信息由Ado连接到数据库中的客户表进行查找,即
Adodc1.RecordSourse=”select*fromkhbwhere”+str‘输入查找条件
并使用多次if语句完成对多重条件输入的选择查询;另外,若不需要任何条件的输入,则可直接调出所有客户的全部信息,即
Adodc1.RecordSourse=”select*fromkhb”此部分由黄先恩完成设计
主要代码如下:
PrivateSubCommand3_Click(indexAsInteger)
IfTrim(Text3.Text)<>""Then
IfNotIsDate(Trim(Text3.Text))Then
MsgBox"出生日期错误,应为yyy-mm-dd型",vbOKOnly,"信息提示"
Text3.TextSetFocus
ExitSub
EndIf此部分为规范日期格式
EndIf
str=""
IfTrim(Text1.Text)<>""Then
Ifstr=""Then
str="姓名='"+Trim(Text1.Text)+"'"
Else
str=str+"and姓名='"+Trim(Text1.Text)+"'"
EndIf
EndIf
IfTrim(Text3.Text)<>""Then
Ifstr=""Then
str="出生日期='"+Format(Trim(Text3.Text),"yyyy.mm.dd")+"'"
Else
str=str+"and出生日期='"+Format(Trim(Text3.Text),"yyyy.mm.dd")+"'"
EndIf
EndIf将生日作为查询条件,以便在客户表中以select语句查找满足条件的客户信息
IfOption1.Value=TrueThen
Ifstr=""Then
str="性别='男'"
Else
str=str+"and性别='男'"
EndIf
ElseIfOption2.Value=TrueThen
Ifstr=""Then
str="性别='女'"
Else
str=str+"and性别='女'"
EndIf此为将性别作查询条件进行查找
EndIf
EndSub另外还有很多其它条件的输入,这里就不再列举
系统用户设计
主要代码如下:
PrivateSubCommand1_Click()
IfTrim(Text1(0).Text)=""OrTrim(Text1
(1).Text)=""OrTrim(Combo1.Text)=""Then
MsgBox"数据项不全,请重新设置",vbOKOnly,"信息提示"
Text1(0).Text.SetFocus
ExitSub
EndIf
Ifflag=iThen'添加操作
Ifsetuser.Adodc1.Recordset.RecordCount>0Then'源记录个数大于零
cond="级别='"+Trim(Text1(0).Text)+"'"
setuser.Adodc1.Recordset.MoveFirst'每次从头开始查找
setuser.Adodc1.Recordset.Find(cond)
IfNotsetuser.Adodc1.Recordset.EOF()Then
MsgBox"存在完全相同的记录",vbOKOnly,"信息提示"
Text1(0).SetFocus
ExitSub
EndIf在此设计中,管理员只需在VB窗体中输入
EndIf需要添加的其它注册人信息,此代码能将信息
setuser.Adodc1.Recordset.AddNew直接录入数据库oper表中,过程如下
setuser.Adodc1.Recordset.Field("用户名")=Trim(Text1(0).Text)
setuser.Adodc1.Recordset.Field("口令")=Val(Trim(Text1
(1).Text))
setuser.Adodc1.Recordset.Field("用户类型")=Trim(Combo1.Text)
setuser.Adodc1.Recordset.Update
recs=recs+1
Else
cond="级别='"+Trim(Text1(0).Text)+"'"
setuser.Adodc1.Recordset.MoveFirst'每次从头开始查找
setuser.Adodc1.Recordset.Find(cond)
IfNotsetuser.Adodc1.Recordset.EOF()Andse
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 客户 信息管理 系统 课程设计