ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:299.47KB ,
资源ID:3745735      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3745735.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(sqlserver实验报告.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

sqlserver实验报告.docx

1、sqlserver实验报告SQL Server高级数据库设计课程综合性实验报告开课实验室:软件实验室一 2008年4月21日实验题目信息管理系统的设计(学生信息管理系统)一、 实验目的:使用SQL Server2000作为数据库管理系统,制作一个小型信息管理系统。培养学生使用数据库独立完成小型项目的能力。二、 实验设备及环境:1. 硬件设备:PC机一台2. 软件环境:安装Windows操作系统,安装数据库管理系统SQL Server2000。三、 实验内容:(1)需求分析: 1、经调查知整个学生档案管理的业务流程描述如下:新生入校,先报道并进行注册登记,然后到财务部门缴费。根据学生被录取的专业

2、,持缴费单到所在系部或注册。到系部注册后,根据所选专业分配到班级。学期期末进行各科考试考试结束后,由各系将每位同学的考试成绩及其他一些相关信息记录至每个同学的档案中2、用户需求分析该系统的操作者为系统管理员。系统管理员:入学时,负责对学生的分配信息进行录入、修改、增加、删除;学期末,负责对学生的考试信息和奖惩情况进行管理。(2)概要设计: 1、 由(1)中的需求分析可得出该系统的业务流程图,如下所示 2、 创建数据库 数据库名为xs,该数据库由七个数据表构成,分别为: 学生信息表(xsXJ):学号、姓名、性别、政治面貌、出生日期、专业、班级、家庭住址、联系电话、备注。其中,学号为该数据表的主键

3、。 课程信息表(xsKC):课程名称,所属专业 专业信息表(xsZY):专业编号、专业名称。其中,专业编号为该数据表的主键。 班级信息表(xsBJ):班级编号、所属院系、辅导员、教室、人数。其中,班级名称为该数据表的主键,用于记录学生所在班级的信息。 成绩信息表(xsCJ):学号、姓名、专业、课程名称、成绩。其中,学号和课程名称共同构成该数据表的主键。 用户表(xsYH):用户名称、密码、用户ID。用于系统对操作员的设置。 操作日记表(xsOD):用户名、登陆日期、登陆时间。用于记录系统的使用情况。3、 实体图和E-R图 经分析可提取出学生、课程、专业、班级这四个实体,实体图分别如下:4、各表

4、的结构 表1 学生信息表(xsXJ)字段名类型长度关键字学号字符,15是姓名字符,20否性别字符,5否政治面貌字符,12否出生日期日期型否专业字符,20否班级字符,20否家庭住址字符,50否联系电话字符,15否备注字符,50否表2 课程信息表(xsKC)字段名类型长度关键字课程名称字符,20是所属专业字符,20否表3 专业信息表(xsZY)字段名类型长度关键字专业编号字符,20是所属院系字符,20否表4 班级信息表(xsBJ)字段名类型长度关键字班级名称字符,20是所属院系字符,20否辅导员字符,10否教室字符,15否人数字符,3否表5 成绩信息表字段名类型长度关键字学号字符,15是姓名字符,

5、20否专业字符,20否课程编号整形,IDENTITY否课程名称字符,20是成绩字符,3否表6 用户表(xsYH)字段名类型长度关键字学号字符,15是姓名字符,20否用户密码字符,15否用户ID字符,20否(3)详细设计: 1、 通过VB创建登陆界面: 输入用户名和密码后,单击“确定”按钮。此时,程序通过与数据库的连接,查看用户名和密码是否匹配。若匹配,则可以进入frmmain界面。这里的“确定”和“退出”按钮创建的是一个按钮控件组,在程序中采用case来实现选择。可以选中“记住密码”,方便下次的登陆。若是新用户,通过“新用户注册”按钮进入frmNewUser界面,进行用户注册。2、 通过VB创

6、建frmmain界面: 通过菜单进行选择,然后进入相应的界面,例如 “学籍管理”“添加学生学籍”,将进入学籍管理模块中的“添加学生学籍”的界面。 3、通过VB创建学籍管理界面: 整个界面主要由一个SSTAB控件构成,在“添加学生学籍”、“查询修改学生信息”、“注销学生学籍”中,创建了大量的控件数组,通过数组来实现数据的传送,这样避免了程序的冗繁。同时,在form的操作中,使用了大量的字段绑定。而且,在该模块的任何一个界面上,随时都可以单击“退出学籍管理”按钮,退回到frmMain模块。学籍管理模块是整个系统的主要模块,具体功能的实现,下面做具体的做介绍: 添加学生学籍:该界面包括一个文本控件组

7、,在单击“添加”按钮时,若信息没有输入完整,提示输入完整的信息。若输入的学号在数据库中已经存在,提示“已经存在学号为*的学生,请重新输入。”若添加成功,相应的也会显示添加成功的提示信息。此时,该学生的信息已成功的添加到数据库中,在下面的datagrid控件中可以观察到。这里调用了一个inputXJ_info函数以实现添加的功能。“清空”按纽是为了一次性删除所输入的信息,避免一项一项地删除。 查询修改学生学籍:在查询的过程中,可以按学号或姓名进行精确查询,也可以按姓进行模糊查询。所有的查找信息都出现在下面的datagrid控件中。这里的“班级”、“专业”、“政治面貌”都进行了字段绑定。实现修改功

8、能时,调用了ChangeXj_info函数。修改完毕以后,通过数据控件的refresh属性,实现对数据库的修改。上一条和下一条按钮只是为了方便删除,当在第一条依然按下“上一条”时,出现已是第一条的提示;当在最后一条仍然按下“下一条”时,出现已经是最后条的提示。 注销学生学籍:模块用于实现对学生学籍的注销,可以在frame1中查找后再注销,也可以直接在frame2中一条一条地进行注销。查询的功能跟上面一个界面的一样,可以进行精确和模糊查询。 (4)编码(学籍管理模块的编码)Dim miCount As IntegerPrivate conn As ADODB.ConnectionPrivate

9、rsXJ As ADODB.RecordsetPrivate rsZY As ADODB.RecordsetPrivate rsBJ As ADODB.RecordsetPrivate rsZZ As ADODB.RecordsetPrivate rs As ADODB.RecordsetDim print_ID As IntegerPrivate Sub Command7_Click()Set DataGrid3.DataSource = rsXJDataGrid3.RefreshEnd SubPrivate Sub Form_Load()Set conn = New ADODB.Conne

10、ctionconn.ConnectionString = DRIVER=SQL Server;UID=sa;DATABASE=xs;WSID=B86;APP=Microsoft Data Access Components;SERVER=B86conn.Open 连接数据源Set rs = New ADODB.Recordsetrs.CursorLocation = adUseClientrs.Open xsXJ, conn, 1, 1Set rsXJ = New ADODB.Recordset 设置连接学生学籍rsXJ.CursorLocation = adUseClientrsXJ.Ope

11、n xsXJ, conn, 2, 2Set DataGrid1.DataSource = rsXJDataGrid1.RefreshSet DataGrid2.DataSource = rsXJDataGrid2.RefreshSet DataGrid3.DataSource = rsXJDataGrid3.RefreshSet rsZY = New ADODB.Recordset 设置连接的专业rsZY.CursorLocation = adUseClientrsZY.Open xsZY, conn, 1, 1Set txtZhuanye.DataSource = rsZYtxtZhuany

12、e.AddItem 专业名称Set txtXJZhuanye.DataSource = rsZYtxtXJZhuanye.AddItem 专业名称Set txtXJdelINFO(3).DataSource = rsZYtxtXJdelINFO(3).DataField = 专业名称Set rsBJ = New ADODB.Recordset 设置连接的班级rsBJ.CursorLocation = adUseClientrsBJ.Open xsBJ, conn, 1, 1Set txtBanji.DataSource = rsBJtxtBanji.AddItem 班级名称Set txtXJB

13、j.DataSource = rsBJtxtXJBj.AddItem 班级名称Set txtXJBanji.DataSource = rsBJtxtXJBanji.AddItem 班级名称Set txtXJdelBJ.DataSource = rsBJtxtXJdelBJ.AddItem 班级名称Set txtXJdelINFO(4).DataSource = rsBJtxtXJdelINFO(4).DataField = 班级名称Set Text1(0).DataSource = rsXJ 绑定字段Set Text1(1).DataSource = rsXJSet txtXJsex.Data

14、Source = rsXJSet txtXJmianmao.DataSource = rsXJSet txtXJDate.DataSource = rsXJSet txtXJZhuanye.DataSource = rsXJSet txtXJBanji.DataSource = rsXJSet Text1(2).DataSource = rsXJSet Text1(3).DataSource = rsXJSet Text1(4).DataSource = rsXJText3(0).DataField = 学号Text3(1).DataField = 姓名txtXJsex.DataField =

15、 性别txtXJmianmao.DataField = 政治面貌txtXJDate.DataField = 出生日期txtXJZhuanye.DataField = 专业txtXJBanji.DataField = 班级Text3(2).DataField = 家庭住址Text3(3).DataField = 联系电话Text3(4).DataField = 备注For i = 0 To 9Set txtXJdelINFO(i).DataSource = rsXJNexttxtXJdelINFO(0).DataField = 学号txtXJdelINFO(1).DataField = 姓名tx

16、tXJdelINFO(2).DataField = 性别txtXJdelINFO(3).DataField = 专业txtXJdelINFO(4).DataField = 班级txtXJdelINFO(5).DataField = 政治面貌txtXJdelINFO(6).DataField = 出生日期txtXJdelINFO(7).DataField = 家庭住址txtXJdelINFO(8).DataField = 联系电话txtXJdelINFO(9).DataField = 备注End SubPrivate Sub Form_QueryUnload(Cancel As Integer,

17、 UnloadMode As Integer)On Error Resume NextrsXJ.ClosersBJ.ClosersZY.CloseMe.HideEnd SubPrivate Sub Command1_Click() 退出系统On Error Resume NextrsXJ.ClosersBJ.ClosersZY.Closeconn.CloseUnload MeEnd SubPrivate Sub cmdAdd_Click()For i = 0 To 2If Trim(Text1(i).Text = ) ThenMsgBox 请输入完整的信息!, vbOKOnly + vbQue

18、stion, 提示Text1(i).SetFocusExit SubEnd IfNextIf txtZhuanye.Text = Or txtBanji.Text = Then MsgBox 请选择学生的专业和班级!, vbOKOnly + vbQuestion, 提示: Exit SubIf txtMianmao.Text = Then MsgBox 请选择学生的政治面貌!, vbOKOnly + vbQuestion, 提示: txtMianmao.SetFocus: Exit SubIf Not (Optm Or Optw) Then MsgBox 请选择学生的性别!, vbOKOnly

19、 + vbQuestion, 提示: Exit SubinputXS_info 写入到学生数据库End SubSub inputXS_info() 添加学生学籍到数据库Dim txtsql As Stringtxtsql = select * from xsXJ where 学号= & Trim(Text1(0).Text) & Set rs = New ADODB.Recordsetrs.CursorLocation = adUseClientrs.Open txtsql, conn, 1, 1If rs.EOF = False ThenMsgBox 数据库中已经存在学号为: & Text1

20、(0).Text & 的学生!请重新输入!, vbOKOnly, 警告cmdXJcls_Click 清空Text1(0).SetFocusElsersXJ.AddNew 添加到新记录rsXJ.Fields(0) = Text1(0).TextrsXJ.Fields(1) = Text1(1).TextIf Optw ThenrsXJ.Fields(2) = 男ElsersXJ.Fields(2) = 女End IfrsXJ.Fields(5) = txtMianmao.TextrsXJ.Fields(6) = txtDate.ValuersXJ.Fields(3) = txtZhuanye.T

21、extrsXJ.Fields(4) = txtBanji.TextrsXJ.Fields(7) = Text1(2).TextIf Trim(Text1(3).Text = ) ThenrsXJ.Fields(8) = 空ElsersXJ.Fields(8) = Text1(3).TextEnd IfIf Trim(Text1(4).Text = ) ThenrsXJ.Fields(9) = 空ElsersXJ.Fields(9) = Text1(4).TextEnd IfrsXJ.UpdateDataGrid1.RefreshMsgBox 学生学籍已经成功加入到数据库中!, vbOKOnly

22、 + vbInformation, 提示cmdXJcls_Click 清空Text1(0).SetFocusEnd IfEnd SubPrivate Sub cmdXJcls_Click()On Error Resume NextFor i = 0 To 4Text1(i).Text = NextOptm.Value = 0: Optw.Value = 0txtMianmao.Text = txtZhuanye.Text = txtBanji.Text = Text1(0).SetFocusEnd SubPrivate Sub cmdXJfind_Click() 查询If Opt1.Value

23、 And Trim(txtXuehao.Text = ) Then MsgBox 请输入学号!, vbOKOnly + vbInformation, 提示: txtXuehao.SetFocus: Exit SubIf Opt2.Value And Trim(txtName.Text = ) Then MsgBox 请输入姓名!, vbOKOnly + vbInformation, 提示: txtName.SetFocus: Exit SubIf Check1.Value And txtXJBj.Text = Then MsgBox 请选择班级!, vbOKOnly + vbInformati

24、on, 提示: txtXJBj.SetFocus: Exit SubxsXJfind_info 学籍查询模块End SubSub xsXJfind_info() 学籍查询模块Dim txtsql As StringIf Opt1.Value ThenIf Check1.Value Thentxtsql = selcet * from xsXJ where 学号= & Trim(txtXuehao.Text) & & and 班级= & Trim(txtXJBj.Text) & Elsetxtsql = select * from xsXJ where 学号= & Trim(txtXuehao.

25、Text) & End IfElseIf Check1.Value Then 按姓名进行模糊查询txtsql = select * from xsXJ where 姓名 like & % & Trim(txtName.Text) & % & & and 班级= & Trim(txtXJBj.Text) & Elsetxtsql = select * from xsxj where 姓名 like & % & Trim(txtName.Text) & % & End IfEnd IfSet rs = New ADODB.Recordsetrs.Closers.Open txtsql, conn,

26、 1, 1If rs.EOF = False Thenrs.MoveFirstSet DataGrid2.DataSource = rsDataGrid2.RefreshFor i = 0 To 4Set Text3(i).DataSource = rsNextSet txtXJsex.DataSource = rs 绑定字段Set txtXJmianmao.DataSource = rsSet txtXJDate.DataSource = rsSet txtXJZhuanye.DataSource = rsSet txtXJBanji.DataSource = rsElseMsgBox 没有

27、找到符合条件的记录!请重新输入查询条件!, vbOKOnly + vbInformation, 提示End IfEnd SubPrivate Sub Command2_Click() 显示全部Set DataGrid2.DataSource = rsXJDataGrid2.RefreshEnd SubPrivate Sub cmdXJchange_Click() 修改If cmdXJchange.Caption = 修改 ThencmdXJchange.Caption = 确认修改For i = 0 To 4Text3(i).Enabled = TrueNexttxtXJmianmao.Ena

28、bled = TruetxtXJDate.Enabled = TruetxtXJZhuanye.Enabled = TruetxtXJBanji.Enabled = TruetxtXJsex.Enabled = TrueElsecmdXJchange.Caption = 修改changexj_info 修改学生信息For i = 0 To 4Text3(i).Enabled = FalseNexttxtXJmianmao.Enabled = FalsetxtXJDate.Enabled = FalsetxtXJZhuanye.Enabled = FalsetxtXJBanji.Enabled

29、= FalsetxtXJsex.Enabled = FalseEnd IfEnd SubSub changexj_info()For i = 0 To 2If Trim(Text3(i).Text = ) ThenMsgBox 请输入完整的信息!, vbOKOnly + vbInformation, 提示Exit SubEnd IfNextrsXJ.Fields(0) = Text3(0).Text 修改数据rsXJ.Fields(1) = Text3(1).TextrsXJ.Fields(2) = txtXJsex.TextrsXJ.Fields(5) = txtMianmao.TextrsXJ.Fields(6) = txtDate.ValuersXJ.Fields(3) = txtXJZhuanye.TextrsXJ.Fields(4) = txtXJBanji.TextrsXJ.Fields(7) = Text3(2).TextIf Trim(Text3(3).Text = ) ThenrsXJ.Fie

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1