sqlserver实验报告Word格式.docx
- 文档编号:16650536
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:25
- 大小:299.47KB
sqlserver实验报告Word格式.docx
《sqlserver实验报告Word格式.docx》由会员分享,可在线阅读,更多相关《sqlserver实验报告Word格式.docx(25页珍藏版)》请在冰豆网上搜索。
其中,专业编号为该数据表的主键。
▲班级信息表(xsBJ):
班级编号、所属院系、辅导员、教室、人数。
其中,班级名称为该数据表的主键,用于记录学生所在班级的信息。
▲成绩信息表(xsCJ):
学号、姓名、专业、课程名称、成绩。
其中,学号和课程名称共同构成该数据表的主键。
▲用户表(xsYH):
用户名称、密码、用户ID。
用于系统对操作员的设置。
▲操作日记表(xsOD):
用户名、登陆日期、登陆时间。
用于记录系统的使用情况。
3、实体图和E-R图
经分析可提取出学生、课程、专业、班级这四个实体,实体图分别如下:
4、各表的结构
表1学生信息表(xsXJ)
字段名
类型长度
关键字
学号
字符,15
是
姓名
字符,20
否
性别
字符,5
政治面貌
字符,12
出生日期
日期型
专业
班级
家庭住址
字符,50
联系电话
备注
表2课程信息表(xsKC)
课程名称
所属专业
表3专业信息表(xsZY)
专业编号
所属院系
表4班级信息表(xsBJ)
班级名称
辅导员
字符,10
教室
人数
字符,3
表5成绩信息表
课程编号
整形,IDENTITY
成绩
表6用户表(xsYH)
用户密码
用户ID
(3)详细设计:
1、通过VB创建登陆界面:
输入用户名和密码后,单击“确定”按钮。
此时,程序通过与数据库的连接,查看用户名和密码是否匹配。
若匹配,则可以进入frmmain界面。
这里的“确定”和“退出”按钮创建的是一个按钮控件组,在程序中采用case来实现选择。
可以选中“记住密码”,方便下次的登陆。
若是新用户,通过“新用户注册”按钮进入frmNewUser界面,进行用户注册。
2、通过VB创建frmmain界面:
通过菜单进行选择,然后进入相应的界面,例如“学籍管理”→“添加学生学籍”,将进入学籍管理模块中的“添加学生学籍”的界面。
3、通过VB创建学籍管理界面:
整个界面主要由一个SSTAB控件构成,在“添加学生学籍”、“查询修改学生信息”、“注销学生学籍”中,创建了大量的控件数组,通过数组来实现数据的传送,这样避免了程序的冗繁。
同时,在form的操作中,使用了大量的字段绑定。
而且,在该模块的任何一个界面上,随时都可以单击“退出学籍管理”按钮,退回到frmMain模块。
学籍管理模块是整个系统的主要模块,具体功能的实现,下面做具体的做介绍:
□添加学生学籍:
该界面包括一个文本控件组,在单击“添加”按钮时,若信息没有输入完整,提示输入完整的信息。
若输入的学号在数据库中已经存在,提示“已经存在学号为**的学生,请重新输入。
”若添加成功,相应的也会显示添加成功的提示信息。
此时,该学生的信息已成功的添加到数据库中,在下面的datagrid控件中可以观察到。
这里调用了一个inputXJ_info函数以实现添加的功能。
“清空”按纽是为了一次性删除所输入的信息,避免一项一项地删除。
□查询修改学生学籍:
在查询的过程中,可以按学号或姓名进行精确查询,也可以按姓进行模糊查询。
所有的查找信息都出现在下面的datagrid控件中。
这里的“班级”、“专业”、“政治面貌”都进行了字段绑定。
实现修改功能时,调用了ChangeXj_info函数。
修改完毕以后,通过数据控件的refresh属性,实现对数据库的修改。
上一条和下一条按钮只是为了方便删除,当在第一条依然按下“上一条”时,出现已是第一条的提示;
当在最后一条仍然按下“下一条”时,出现已经是最后条的提示。
□注销学生学籍:
模块用于实现对学生学籍的注销,可以在frame1中查找后再注销,也可以直接在frame2中一条一
条地进行注销。
查询的功能跟上面一个界面的一样,可以进行精确和模糊查询。
(4)编码(学籍管理模块的编码)
DimmiCountAsInteger
PrivateconnAsADODB.Connection
PrivatersXJAsADODB.Recordset
PrivatersZYAsADODB.Recordset
PrivatersBJAsADODB.Recordset
PrivatersZZAsADODB.Recordset
PrivatersAsADODB.Recordset
Dimprint_IDAsInteger
PrivateSubCommand7_Click()
SetDataGrid3.DataSource=rsXJ
DataGrid3.Refresh
EndSub
PrivateSubForm_Load()
Setconn=NewADODB.Connection
conn.ConnectionString="
DRIVER=SQLServer;
UID=sa;
DATABASE=xs;
WSID=B86;
APP=MicrosoftDataAccessComponents;
SERVER=B86"
conn.Open'
连接数据源
Setrs=NewADODB.Recordset
rs.CursorLocation=adUseClient
rs.Open"
xsXJ"
conn,1,1
SetrsXJ=NewADODB.Recordset'
设置连接学生学籍
rsXJ.CursorLocation=adUseClient
rsXJ.Open"
conn,2,2
SetDataGrid1.DataSource=rsXJ
DataGrid1.Refresh
SetDataGrid2.DataSource=rsXJ
DataGrid2.Refresh
SetrsZY=NewADODB.Recordset'
设置连接的专业
rsZY.CursorLocation=adUseClient
rsZY.Open"
xsZY"
SettxtZhuanye.DataSource=rsZY
txtZhuanye.AddItem"
专业名称"
SettxtXJZhuanye.DataSource=rsZY
txtXJZhuanye.AddItem"
'
SettxtXJdelINFO(3).DataSource=rsZY
txtXJdelINFO(3).DataField="
SetrsBJ=NewADODB.Recordset'
设置连接的班级
rsBJ.CursorLocation=adUseClient
rsBJ.Open"
xsBJ"
SettxtBanji.DataSource=rsBJ
txtBanji.AddItem"
班级名称"
SettxtXJBj.DataSource=rsBJ
txtXJBj.AddItem"
SettxtXJBanji.DataSource=rsBJ
txtXJBanji.AddItem"
SettxtXJdelBJ.DataSource=rsBJ
txtXJdelBJ.AddItem"
SettxtXJdelINFO(4).DataSource=rsBJ
txtXJdelINFO(4).DataField="
SetText1(0).DataSource=rsXJ'
绑定字段
SetText1
(1).DataSource=rsXJ
SettxtXJsex.DataSource=rsXJ
SettxtXJmianmao.DataSource=rsXJ
SettxtXJDate.DataSource=rsXJ
SettxtXJZhuanye.DataSource=rsXJ
SettxtXJBanji.DataSource=rsXJ
SetText1
(2).DataSource=rsXJ
SetText1(3).DataSource=rsXJ
SetText1(4).DataSource=rsXJ
Text3(0).DataField="
学号"
Text3
(1).DataField="
姓名"
txtXJsex.DataField="
性别"
txtXJmianmao.DataField="
政治面貌"
txtXJDate.DataField="
出生日期"
txtXJZhuanye.DataField="
专业"
txtXJBanji.DataField="
班级"
Text3
(2).DataField="
家庭住址"
Text3(3).DataField="
联系电话"
Text3(4).DataField="
备注"
Fori=0To9
SettxtXJdelINFO(i).DataSource=rsXJ
Next
txtXJdelINFO(0).DataField="
txtXJdelINFO
(1).DataField="
txtXJdelINFO
(2).DataField="
txtXJdelINFO(5).DataField="
txtXJdelINFO(6).DataField="
txtXJdelINFO(7).DataField="
txtXJdelINFO(8).DataField="
txtXJdelINFO(9).DataField="
PrivateSubForm_QueryUnload(CancelAsInteger,UnloadModeAsInteger)
OnErrorResumeNext
rsXJ.Close
rsBJ.Close
rsZY.Close
Me.Hide
PrivateSubCommand1_Click()'
退出系统
conn.Close
UnloadMe
PrivateSubcmdAdd_Click()
Fori=0To2
IfTrim(Text1(i).Text="
"
)Then
MsgBox"
请输入完整的信息!
vbOKOnly+vbQuestion,"
提示"
Text1(i).SetFocus
ExitSub
EndIf
IftxtZhuanye.Text="
OrtxtBanji.Text="
ThenMsgBox"
请选择学生的专业和班级!
:
ExitSub
IftxtMianmao.Text="
请选择学生的政治面貌!
txtMianmao.SetFocus:
IfNot(OptmOrOptw)ThenMsgBox"
请选择学生的性别!
inputXS_info'
写入到学生数据库
SubinputXS_info()'
添加学生学籍到数据库
DimtxtsqlAsString
txtsql="
select*fromxsXJwhere学号='
&
Trim(Text1(0).Text)&
"
rs.Opentxtsql,conn,1,1
Ifrs.EOF=FalseThen
数据库中已经存在学号为:
Text1(0).Text&
的学生!
请重新输入!
vbOKOnly,"
警告"
cmdXJcls_Click'
清空
Text1(0).SetFocus
Else
rsXJ.AddNew'
添加到新记录
rsXJ.Fields(0)=Text1(0).Text
rsXJ.Fields
(1)=Text1
(1).Text
IfOptwThen
rsXJ.Fields
(2)="
男"
女"
rsXJ.Fields(5)=txtMianmao.Text
rsXJ.Fields(6)=txtDate.Value
rsXJ.Fields(3)=txtZhuanye.Text
rsXJ.Fields(4)=txtBanji.Text
rsXJ.Fields(7)=Text1
(2).Text
IfTrim(Text1(3).Text="
rsXJ.Fields(8)="
空"
rsXJ.Fields(8)=Text1(3).Text
IfTrim(Text1(4).Text="
rsXJ.Fields(9)="
rsXJ.Fields(9)=Text1(4).Text
rsXJ.Update
学生学籍已经成功加入到数据库中!
vbOKOnly+vbInformation,"
PrivateSubcmdXJcls_Click()
Fori=0To4
Text1(i).Text="
Optm.Value=0:
Optw.Value=0
txtMianmao.Text="
txtZhuanye.Text="
txtBanji.Text="
PrivateSubcmdXJfind_Click()'
查询
IfOpt1.ValueAndTrim(txtXuehao.Text="
)ThenMsgBox"
请输入学号!
txtXuehao.SetFocus:
IfOpt2.ValueAndTrim(txtName.Text="
请输入姓名!
txtName.SetFocus:
IfCheck1.ValueAndtxtXJBj.Text="
请选择班级!
txtXJBj.SetFocus:
xsXJfind_info'
学籍查询模块
SubxsXJfind_info()'
IfOpt1.ValueThen
IfCheck1.ValueThen
selcet*fromxsXJwhere学号='
Trim(txtXuehao.Text)&
and班级='
Trim(txtXJBj.Text)&
IfCheck1.ValueThen'
按姓名进行模糊查询
select*fromxsXJwhere姓名like'
%"
Trim(txtName.Text)&
select*fromxsxjwhere姓名like'
rs.Close
rs.MoveFirst
SetDataGrid2.DataSource=rs
SetText3(i).DataSource=rs
SettxtXJsex.DataSource=rs'
SettxtXJmianmao.DataSource=rs
SettxtXJDate.DataSource=rs
SettxtXJZhuanye.DataSource=rs
SettxtXJBanji.DataSource=rs
没有找到符合条件的记录!
请重新输入查询条件!
PrivateSubCommand2_Click()'
显示全部
PrivateSubcmdXJchange_Click()'
修改
IfcmdXJchange.Caption="
修改"
Then
cmdXJchange.Caption="
确认修改"
Text3(i).Enabled=True
txtXJmianmao.Enabled=True
txtXJDate.Enabled=True
txtXJZhuanye.Enabled=True
txtXJBanji.Enabled=True
txtXJsex.Enabled=True
changexj_info'
修改学生信息
Text3(i).Enabled=False
txtXJmianmao.Enabled=False
txtXJDate.Enabled=False
txtXJZhuanye.Enabled=False
txtXJBanji.Enabled=False
txtXJsex.Enabled=False
Subchangexj_info()
IfTrim(Text3(i).Text="
rsXJ.Fields(0)=Text3(0).Text'
修改数据
rsXJ.Fields
(1)=Text3
(1).Text
rsXJ.Fields
(2)=txtXJsex.Text
rsXJ.Fields(3)=txtXJZhuanye.Text
rsXJ.Fields(4)=txtXJBanji.Text
rsXJ.Fields(7)=Text3
(2).Text
IfTrim(Text3(3).Text="
rsXJ.Fie
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sqlserver 实验 报告