数据库实训轿车销售管理系统.docx
- 文档编号:7574590
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:39
- 大小:1.08MB
数据库实训轿车销售管理系统.docx
《数据库实训轿车销售管理系统.docx》由会员分享,可在线阅读,更多相关《数据库实训轿车销售管理系统.docx(39页珍藏版)》请在冰点文库上搜索。
数据库实训轿车销售管理系统
轿车销售管理系统
学号:
11041216
班级:
计算机科学与技术11-2
姓名:
张文涛
引言:
本系统采用VisualBasic6.0和SQLServer2008来建立一个简单的轿车销售管理系统。
基本功能包括:
轿车信息管理、客户信息管理、员工信息管理等功能。
详细描述如下:
1.系统用户管理功能:
用户根据姓名和密码登录系统。
登录用户分为两个等级:
普通用户和管理员用户。
(1)普通用户:
只有查看轿车信息、客户信息、员工信息等功能;
(2)管理员用户(admin):
除了以上功能外,同时还有添加用户、修改用户密码和删除用户的功能。
2.轿车信息管理功能:
录入所销售的轿车的编号、型号、品牌、价格、保修期等信息,同时支持对轿车信息的添加、修改、删除和查询功能。
3.客户信息管理功能:
录入购买的客户的姓名、性别、年龄、联系方式、所购车型号、购车价格等信息,同时支持对客户信息的添加、修改、删除和查询功能。
4.员工信息管理功能:
录入员工的员工号、姓名、性别等信息,同时支持对员工信息的添加、修改、删除和查询功能。
一、系统功能
系统的控制流程图如下所示:
本系统主要需要实现对轿车信息、客户信息和员工信息的管理。
具体实现的功能包括:
1.系统用户管理功能:
用户根据姓名和密码登录系统。
登录用户分为两个等级:
普通用户和管理员用户。
(1)普通用户:
只有查看轿车信息、客户信息、员工信息等功能;
(2)管理员用户(Adimn):
除了以上功能外,同时还有添加用户、修改用户密码和删除用户的功能。
2.轿车信息管理功能:
录入所销售的轿车的编号、型号、品牌、价格、保修期等信息,同时支持对轿车信息的添加、修改、删除和查询、统计功能。
3.客户信息管理功能:
录入购买的客户的姓名、性别、年龄、联系方式、所购车型号、购车价格等信息,同时支持对客户信息的添加、修改、删除和查询、统计功能。
4.员工信息管理功能:
录入员工的员工号、姓名、性别等信息,同时支持对员工信息的添加、修改、删除和查询、统计功能。
二、概念模型设计
用E-R图描述本系统的数据库设计。
三、数据库设计
1.数据库设计
创建“轿车销售管理系统”数据库,库名为CarSaleSys,其中数据文件初始大小为1MB,最大大小不受限制,允许数据库自动增长,增长方式是按10%增长;日志文件初始大小为1MB,最大大小不受限制,增长方式是按10%增长。
CarSaleSys系统中包含5个数据库表:
用户信息表Users、用户类型表UserType、轿车信息表Car、客户信息表Customer、员工信息表Staff。
2.数据库表设计
数据库中各表的结构分别如下:
(1)Users表
字段名称
数据类型
是否允许空值
约束
说明
User_name
varchar(10)
×
主键
用户名
User_pwd
varchar(20)
×
用户密码
User_type
smallint
×
外键
用户等级
(2)UserType表
字段名称
数据类型
是否允许空值
约束
说明
User_type
smallint
×
主键
用户等级
(限制用户权限)
Type_discription
varchar(50)
×
唯一值
类型描述
(3)Car表
字段名称
数据类型
是否允许空值
约束
说明
Car_id
int
×
主键
轿车编号
Car_name
varchar(20)
×
主键
轿车型号
Car_brand
varchar(20)
×
轿车品牌
Car_price
int
×
轿车价格
Car_time
varchar(10)
×
轿车保修期
Car_info
varchar(100)
√
轿车具体描述
(4)Customer表
字段名称
数据类型
是否允许空值
约束
说明
Customer_id
int
×
主键
客户编号
Customer_name
varchar(10)
×
客户姓名
Customer_sex
varchar
(2)
×
客户性别
Customer_age
int
√
客户年龄
Customer_occup
varchar(10)
√
客户职业
Customer_num
varchar(20)
√
身份证号
Customer_tel
varhcar(10)
√
客户电话
Customer_addr
varchar(20)
√
客户住址
Buy_car
varchar(20)
×
外键
购车型号
Buy_price
varchar(10)
×
购车价格
Info
varchar(100)
√
备注
(客户的其他信息)
(5)Staff表
字段名称
数据类型
是否允许空值
约束
说明
Staff_if
int
×
主键
员工编号
Staff_name
varchar(10)
×
员工姓名
Staff_sex
varchar
(2)
×
员工性别
Staff_birth
datetime(8)
√
员中生日
Staff_intime
datetime(8)
×
进入公司时间
Staff_depart
varchar(10)
√
所在部门
Staff_title
varchar(10)
√
员工职务
Staff_tel
varchar(10)
√
员工电话
Staff_addr
varchar(20)
√
员工住址
3.数据库表内容
数据库中各表的数据内容分别如下:
(1)Users表
(2)UserType表
(3)Car表
(4)Customer表
(5)Staff表
四、VB开发设计
一)登录界面设计
1.程序界面
当系统运行时,首先启动轿车销售管理登录界面Frm_login。
设置多窗体的启动窗体为Frm_login。
程序运行界面如下,根据运行界面添加相应控件及进行相应属性的设置。
注意:
添加一个Adodc1,设置Adodc控件的ConnectionString属性,在属性页中选择“使用ODBC数据源名称”。
2.登陆界面代码
PublicPasswordKeyAsString
PublicnamekeyAsString
Publictry_timesAsInteger
PrivateSubcmd_Yes_Click()
DimjAsSingle
IftxtUname=""Then
MsgBox"请输入用户名"
txtUname.SetFocus
ExitSub
EndIf
IftxtUpwd=""Then
MsgBox"请输入密码"
txtUpwd.SetFocus
ExitSub
EndIf
namekey=Trim(txtUname.Text)
PasswordKey=Trim(txtUpwd.Text)
Adodc1.RecordSource="select*fromUserswhereUser_name='"+namekey+"'"
Adodc1.Refresh
IfAdodc1.Recordset.EOF=TrueThen
MsgBox"用户不存在"
try_times=try_times+1
Iftry_times>=3Then
MsgBox"您已经三次尝试进入本系统,均不成功,系统将关闭"
ExitSub
Else
ExitSub
EndIf
EndIf
IfPasswordKey<>Adodc1.Recordset.Fields
(1)Then
MsgBox"密码错误"
try_times=try_times+1
Iftry_times>=3Then
MsgBox"您已经三次尝试进入本系统,均不成功,系统将关闭"
ExitSub
Else
ExitSub
EndIf
EndIf
IfAdodc1.Recordset.Fields
(2)=1Then
frm_Main.Menu_addcar.Enabled=False
frm_Main.Menu_addcus.Enabled=False
frm_Main.Menu_addemp.Enabled=False
frm_Main.Menu_adduser.Enabled=False
frm_edit_car.cmdChange=False
frm_edit_car.cmdDel=False
frm_edit_cus.cmdChange=False
frm_edit_cus.cmdDel=False
Frm_edit_emp.cmdChange=False
Frm_edit_emp.cmdDel=False
frm_Main.Menu_edit_user.Enabled=False
ElseIfAdodc1.Recordset.Fields
(2)<>0Then
MsgBox("用户类型错误")
ExitSub
EndIf
UnloadMe
frm_Main.Show
EndSub
(2)轿车销售管理系统的主界面
1.程序界面
主界面具体设置如下表:
主菜单及下级子菜单属性设置,然后添加对应的窗体,修改窗体名称属性。
级别
菜单
名称
单击链接窗口
主菜单
系统用户管理
MenuUser
子菜单
添加用户
Menu_adduser
Frm_adduser.show
查看/修改密码
Menu_edit_user
Frm_edit_user.show
主菜单
轿车信息管理
Menu_carinfo
子菜单
查看轿车信息
Menu_quecar
Frm_quecar.show
修改/删除轿车信息
Menu_edit_car
Frm_edit_car.show
增加轿车信息
Menu_addcar
Frm_addcar.show
主菜单
客户信息管理
Menu_customerinfo
子菜单
查看客户信息
Menu_quecus
Frm_quecus.show
修改/删除客户信息
Menu_edit_cus
Frm_edit_cus.show
增加客户信息
Menu_addcus
Frm_addcus.show
主菜单
员工信息管理
Menu_employeeinfo
子菜单
查看员工信息
Menu_queemp
Frm_queemp.show
修改/删除员工信息
Menu_modiemp
Frm_edit_emp.show
增加员工信息
Menu_addemp
Frm_addemp.show
主菜单
退出系统
Menu_exit
2.主要代码:
PrivateSubMenu_addcar_Click()
Frm_addcar.Show
EndSub
PrivateSubMenu_addcus_Click()
Frm_addcus.Show
EndSub
PrivateSubMenu_addemp_Click()
Frm_addemp.Show
EndSub
PrivateSubMenu_adduser_Click()
Frm_adduser.Show
EndSub
PrivateSubMenu_edit_car_Click()
Frm_edit_car.Show
EndSub
PrivateSubMenu_edit_cus_Click()
Frm_edit_cus.Show
EndSub
PrivateSubMenu_edit_use_Click()
Frm_edit_user.Show
EndSub
PrivateSubMenu_modiemp_Click()
Frm_edit_emp.Show
EndSub
PrivateSubMenu_quecar_Click()
Frm_quecar.Show
EndSub
PrivateSubMenu_quecus_Click()
Frm_quecus.Show
EndSub
PrivateSubMenu_queemp_Click()
Frm_queemp.Show
EndSub
(三)系统用户管理功能
1.添加用户窗体
在轿车销售管理系统的主界面中,单击“添加用户”选项,启动frm_adduser.show,进入“添加用户”界面,如下所示:
单击“取消”按钮,将触发cmd_cancel_click事件,不保存输入文本框的内容而直接返回到主界面。
单击“确定”按钮,将触发cmd_ok_click事件,把输入的用户信息添加到SQLServer对应的数据库表中。
具体代码如下:
主要代码:
PrivateSubcmdYes_Click()
DimusertypeAsInteger
'数据有效性检查
IftxtUname=""Then
MsgBox"请输入用户名"
txtUname.SetFocus
ExitSub
EndIf
Adodc1.RecordSource="select*fromUserswhereUser_name='"+Trim(txtUname.Text)+"'"
Adodc1.Refresh
IfAdodc1.Recordset.EOF=FalseThen
MsgBox"已经有此用户,请重新输入"
txtUname.SetFocus
ExitSub
Else
IftxtUpwd=""Then
MsgBox"请输入密码"
txtUpwd.SetFocus
ExitSub
EndIf
IftxtURpwd=""Then
MsgBox"请确认密码"
txtURpwd.SetFocus
ExitSub
ElseIftxtURpwd.Text<>txtUpwd.TextThen
MsgBox"密码不一致"
txtURpwd.SetFocus
ExitSub
EndIf
IfOption1=TrueThen
usertype=0
ElseIfOption2=TrueThen
usertype=1
Else
MsgBox"请选择用户类型"
ExitSub
EndIf
IfLen(txtUpwd)<6Then
MsgBox"密码长度不能小于6"
txtUpwd.SetFocus
txtUpwd.SelStart=0
txtUpwd.SelLength=Len(txtUpwd)
ExitSub
EndIf
'添加新用户
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(0).Value=Trim(txtUname.Text)
Adodc1.Recordset.Fields
(1).Value=Trim(txtUpwd.Text)
Adodc1.Recordset.Fields
(2).Value=usertype
Adodc1.Recordset.Update
Adodc1.Refresh
MsgBox"用户增加成功"
UnloadMe
Endif
EndSub
2.“查看/修改密码”窗体
单击“查看/修改密码”选项,启动Frm_edit_User.show,进入“用户列表”界面,如下图所示。
主要代码:
下面的Form_Load()事件代码,是在窗体加载时用代码连接数据库,不用设置Adodc控件的ConnectionString属性。
可以添加一个模块,在模块中定义一个连接字符串函数,然后在Form_Load()事件中调用连接函数conStr。
注意:
后面涉及Adodc控件的连接都可以用一行代码“Adodc1.ConnectionString=cnStr”调用在模块中已经定义的连接字符串函数。
PrivateSubCmd_del_Click()
DimusernameAsString
IfAdodc1.Recordset.EOF=TrueThen
MsgBox"请选择记录"
ExitSub
EndIf
'通过Adodc1.Recordset.Fields()读取Adodc1记录源中的当前数据
username=Adodc1.Recordset.Fields(0)
'询问用户是否确认删除
IfMsgBox("是否删除当前行?
",vbYesNo,"确认")=vbYesThen
Adodc1.RecordSource="Select*FromUsersWhereUser_name='"+username+"'"
Adodc1.Refresh
Adodc1.Recordset.Delete
Adodc1.Recordset.Update
EndIf
'刷新DataGrid表格的内容
Adodc1.RecordSource="SELECTu.User_name,u.User_Pwd,t.Type_discriptionAsUser_discFROMUsersu,UserTypetWheret.User_type=u.User_type"
Adodc1.Refresh
EndSub
PrivateSubCmd_modi_Click()
IfAdodc1.Recordset.EOF=TrueThen
MsgBox"请选择记录"
ExitSub
EndIf
'通过Adodc1.Recordset.Fields()读取Adodc1记录源中的当前数据
Frm_modiuser.oldPwd=Adodc1.Recordset.Fields
(1)
Frm_modiuser.username=Adodc1.Recordset.Fields(0)
Frm_modiuser.Show
EndSub
PrivateSubForm_Load()
DimiAsInteger
Adodc1.RecordSource="SELECTu.User_name,u.User_Pwd,t.Type_discriptionAsUser_discFROMUsersu,UserTypetWheret.User_type=u.User_type"
Adodc1.Refresh
EndSub
修改密码界面如下:
修改密码代码如下:
PrivateSubcmdYes_Click()
DimcnnAsADODB.Connection
DimrsAsADODB.Recordset
cnn.ConnectionString="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=CarSaleSys;DataSource=(local)"
'cnn.ConnectionString=MStr()
cnn.Open
Setrs=cnn.Execute("selectcount(*)fromUserswhereUser_name='"+Trim(txtUname.Text)+"'andUser_pwd='"+Trim(txtOldpwd.Text)+"'")
IftxtUname.Text=""Then
MsgBox("请输入用户名")
ExitSub
EndIf
IftxtOldpwd.Text=""Then
MsgBox("请输入旧密码")
ExitSub
EndIf
IftxtNpwd.Text=""Then
MsgBox("请输入新密码")
ExitSub
EndIf
IftxtRpwd.Text=""Then
MsgBox("请确认新密码")
ExitSub
EndIf
IftxtRpwd.Text<>txtNpwd.TextThen
MsgBox("新密码与确认密码不正确")
ExitSub
EndIf
Ifrs.EOFThen
MsgBox("请确认用户名,密码")
ExitSub
Else
Setrs=cnn.Execute("updateUserssetUser_pwd='"+Trim(txtNpwd.Text)+"'whereUser_name='"+Trim(txtUname.Text)+"'")
IfNotrs.EOFThen
MsgBox("数据更新成功")
UnloadMe
ExitSub
Else
MsgBox("未知错误")
UnloadMe
ExitSub
EndIf
EndIf
EndSub
(四)轿车信息管理功能
1.轿车信息查询
(1)程序运行界面
(2)主要代码
PrivateSubcmdYes_Click()
IfOption1=TrueThen
Iftxtxinghao.Text<>""Then
Adodc1.RecordSource="selectCar_name,Car_brand,Car_price,Car_time,Car_infofromCarwhereCar_namelike'%"+Trim(txtxinghao.Text)+"%'"
Adodc1.Refresh
EndIf
EndIf
IfOption2=TrueThen
Iftxtpinpai.Text<>""Then
Adodc1.RecordSource="selectCar_name,Car_brand,Car_pri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 轿车 销售 管理 系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)