利用SQL SERVER、EXCEL透视表等快速处理考试数据

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:jiujiejushi
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:该文展示了EXCEL透视表与SQL SERVER、ACCESS相结合,利用广播电视大学教务管理信息系统数据资源,为电大的考务工作提供方便。
  关键词:EXCEL;透视表;ACCESS;SQL SERVER;ODBC
  中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2009)15-3864-03
  
  The Use of SQL Server and Excel to Rapidly Process Exam Data
  ZHOU Pao
  (Hunan Radio and TV University,Changsha 410004,China)
  Abstract: This text illustrated the technology of combining Excel pivot tables with SQL Server 2000 and Access in utilizing the data resources of radio and TV university teaching administration system to provide convenience for the examination work.
  Key words: Excel; pivot table; Access; SQL Server 2000;ODBC
  
  1 引言
  
  电大考试工作比较繁重,为了方便工作,经常需要各种各样的数据供工作使用。大部分源数据都在SQL SERVER数据库中,数据量也比较大,为了很快得到能满足自己需要的数据,去编写小的程序,在时间上和精力上可能都不够,所以可以利用微软的软件:SQL SERVER、ACCESS、EXCEL和Windows操作系统自带的工具:ODBC数据源管理器,在不开发软件的情况下,就可以迅速、准确、方便的得到自己需要的数据。
  
  2 理念和流程
  
  SQL SERVER是新一代大型关系型数据库管理系统。SQL SERVER数据库的功能强大,这里我们将利用SQL SERVER的视图功能和导出功能。视图是从一个表或多个表(或视图)导出的表,视图是一个虚拟表,它对应的数据不能进行实际存储。但是把视图从SQL SERVER导出,便就是一个真正的表,可以对表中的数据进行操作。SQL SERVER的数据可以导出到ODBC数据源等数据源。在这里把微软操作系统自带的ODBC数据源管理器作为SQL SERVER导出的数据的目的地。
  ODBC是一种数据库互连接口。ODBC数据源管理器主要任务是管理安装的ODBC驱动程序和管理数据源。ODBC管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。这里采用ACCESS数据库,ACCESS 是微软公司推出的基于Windows的桌面关系数据库管理系统,完成大部分数据管理的任务。选择Access的原因有两个:1)它和SQL SERVER都是微软公司开发的软件,两个数据库系统之间的兼容性比较很好;2)比较灵活,存放在电脑中的位置可以改动,改动后只需在ODBC管理器中修改路径即可。
  EXCEL是一个功能十分强大而易于使用的动态数据分析工具。其中EXCEL数据透视表报表是用于快速汇总大量数据的交互式表格,当源数据发生变化时,通过刷新操作就可更新报表内的数据。使用数据透视表可以将数据的排序、筛选和分类汇总三个过程结合在一起。通过互换报表的行列字段以查看对数据源的不同汇总结果,通过显示页字段的不同数据项来筛选数据,还可以根据需要显示所选区域中的明细数据,非常便于用户重新组织和统计数据。
  以上四个工具在平常的工作中好象联系不起来,在平常工作中大家一般只用了其中一个,虽然一个工具的功能就比较强大了,但是很难得到我们需要的数据。平时,SQL SERVER和ACCESS都是被当作数据库,用来存储数据,使用者可以在数据库中查询数据、建立视图或查询。EXCEL的强大的数据处理功能也经常被大家忽略,经常被认为只是电子表格,是用来制作表格的软件。EXCEL功能强大,也需要数据库提供数据,因为EXCEL不适合存储大量数据,数据量过大会影响EXCEL的运行速度,所以要使用SQL SERVER或者ACCESS作为数据库来提供数据。但是EXCEL不能直接与SQL SERVER或ACCESS直接连接,需要使用ODBC与数据库连接。如果源数据分别在不同的SQL SERVER数据库中,可以把源数据导入到ACCESS数据中,便于数据的管理和维护。这四个工具之间的关系是:在ODBC数据源管理器为ACCESS数据库建立数据源,把源数据从SQL SERVE导出到为ACCESS数据库建立数据源,即把数据导出到ACCESS数据库,EXCEL与数据源连接后生成透视表,当数据源中的数据更新后,透视表中的数据也将随着更新。
  2006年开始,中央电大开始使用电大新教务管理信息系统平台,此系统采用B/S模式(浏览器/服务器结构),用户无须安装客户端,只要使用浏览器便可完成操作。但是由于设计理念的原因,在期末考试后进行计算机录入成绩的时候遇到了很多的不便。录入成绩有两种方法:一是按照保密号登分,即按照考场录入,因为一个考场的人数最多只有30个,所以调用登分表的時间比较快;二是根据学号登分,如果不知道教学点名称或者班代码,调用一个分校的某门课程登分表的时间将很长,将影响登分工作的进度。由于电大某些课程的期末考试为无纸化考试,这些考试的数据从无纸化系统导出后,没有班代码和保密号,所以给登分工作带来了很多的不便。利用以上四个工具就可以生成EXCEL的数据透视表,可以完善无纸化考试的考试数据,方便登分。
  下面,我们以新教务管理系统和无纸化考试考务系统的数据分类汇总为例,来展示如何利用SQL SERVER、ACCESS、EXCEL和ODBC数据源管理器,方便、快捷的得到我们需要的数据,流程图如图1。
  
  3 数据透视表的实现
  
  1)在SQL SERVER中建立供使用的视图
  新教务管理信息系统数据库中的xsb表为我们提供了学生基本数据,这个表的主要字段有四个:Xh(学号)、Xm(姓名)、Xxdm(学校代码)、Bdm(班代码)。为了使报表字段的中文化显示,我们结合另外两个表通过建立视图创建一个虚拟表,此表将作为数据透视表的源表之一,另外两个表是:Bjxxb(班级信息表)、Xxdmb(信息代码表)。相关表和关键字段的说明如表1。
  运行SQL SERVER,打开它连接的电大新教务管理系统数据库,在“视图”中,把上面三个表进行关联,建立一个名为“v_学生基本信息表”的新视图,此表就是数据透视表的源表之一。“v_学生基本信息表”视图的完整脚本如下:
  if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[v_学生基本信息表]') and OBJECTPROPERTY(id, N'IsView') = 1)
  drop view [dbo].[v_学生基本信息表]
  GO
  SET QUOTED_IDENTIFIER ON
  GO
  SET ANSI_NULLS ON
  GO
  CREATE VIEW dbo.VIEW1
  AS
  SELECT dbo.xsb.Xh, dbo.xsb.Xm, dbo.xxdmb.Xxdm, dbo.xxdmb.Xxmc, dbo.xsb.Bdm,
  dbo.bjxxb.Bmc
  FROM dbo.bjxxb INNER JOIN
  dbo.xsb ON dbo.bjxxb.Bdm = dbo.xsb.Bdm AND
  dbo.bjxxb.Xxdm = dbo.xsb.Xxdm INNER JOIN
  dbo.xxdmb ON dbo.xsb.Xxdm = dbo.xxdmb.Xxdm
  GO
  SET QUOTED_IDENTIFIER OFF
  GO
  SET ANSI_NULLS ON
  GO
  2)建立数据源
  另外一个源表在无纸化考试考务系统的SQL SERVER数据库中,为了能方便的和“v_学生基本信息表”进行关联,把这两个表导入到ACCESS数据库中,再进行关联,就可以得到最终的数据表。需要把这个ACCESS数据库进行ODBC数据源配置,Excel透视表才能检测到数据。
  1.打开【ODBC 数据源管理器】窗体,点击【添加按钮】,选择“MicrosoftAccessDriver(*.mdb)”,按【完成】按钮,弹出【ODBC MicrosoftAccess 安装】窗体。
  2.在【数据源名】中填入“无纸化考试数据”,然后选择相应的ACCESS数据库,点击【确定】,即成了对ACCESS数据库的ODBC数据源的配置(见图2)。
  ACCESS数据库的ODBC数据源配置结束后,要把“v_学生基本信息表”和无纸化考试系统数据库中的“学生成绩表”导出到ODBC数据源中的“无纸化考试数据”中。
  1.运行SQL SERVER企业管理器,登录数据库服务器,选择相应的数据库,启用“导出数据”功能,在【选择数据源】窗体中选择相应的数据源,输入用户名和密码,点击“下一步”;
  2.在【选择目的】窗体中“目的”选项中选择【其他(ODBC數据源)】,在【用户/系统DSN】中选择“无纸化考试数据”,点击“下一步”;
  3.在【指定表复制或查询】窗体中选择【从源数据库复制表和视图】,点击【下一步】,出现【选择源表和视图】窗体,选择“v_学生基本信息表”视图,依次点击【下一步】*【下一步】*【完成】,即完成数据表的导出。
  无纸化考试系统数据库中的学生成绩表的导出步骤和“v_学生基本信息表”的导出步骤一样。
  两个表都导入了ACCESS数据库,将要把这两个表进行关联,生成供透视表使用的数据表:无纸化考试成绩数据表。到此,数据全部到位。生成此表的脚本如下:
  SELECT v_学生基本信息表.Xxdm, v_学生基本信息表.Xh, v_学生基本信息表.Xm, v_学生基本信息表.Xxmc, v_学生基本信息表.Bdm, v_学生基本信息表.Bmc, [8].准考证号, [8].姓名, [8].总分
  FROM v_学生基本信息表 RIGHT JOIN 8 ON (v_学生基本信息表.Xh = [8].准考证号) AND (v_学生基本信息表.Xm = [8].姓名)
  ORDER BY v_学生基本信息表.Xxdm, v_学生基本信息表.Xh
  3)使用EXCEL数据透视表工具
  1.调用EXCEL菜单栏中的【数据】栏,单击其中的【数据透视表和数据透视图】,弹出【数据透视表和数据透视图向导 -- 3步骤之1】窗体。在“指定待分析数据的数据源类型”项目中,选择 “外部数据源”选项和“数据透视表”选项,然后单击【下一步】按钮;
  2.进入【数据透视表和数据透视图向导 -- 3步骤之2】窗体,单击【获取数据(G)…】,在弹出的【选择数据源】的窗体中选择“无纸化考试数据*”,然后单击【确定】按钮。
  3.在【查询向导 – 选择列】窗体左边的列表框中选中“无纸化考试成绩数据表”后,单击【>】按钮(见图3), 然后依次单击【下一步】*【下一步】*【下一步】*【完成】按钮,返回到【数据透视表和数据透视图向导 -- 3步骤之2】窗体,并单击【下一步】按钮。
  4.进入【数据透视表和数据透视图向导 -- 3步骤之3】窗体,在这里有两种方法:一种是点击【布局】按钮,在弹出的【数据透视表和数据透视图向导--布局】窗体中,定义数据透视表布局,对透视表不熟悉的人可以使用这种方法;另外一种是点击【完成】按钮,不使用向导,对透视表比较熟悉的人可以使用这种方法。这里使用第二种方法,点击【完成】按钮后,可以进行操作(见图4)。将“xxdm”、“xxmc”、“xh”、“xm”字段依次拖入“行”栏目,将“总分”字段拖入“数据”栏目,然后单击【保存】按钮,则新建成数据透视表报表。
  5.通过以上的操作,便可以得到很直观的数据表格,可以看到全省各个教学点的考生的学号、姓名和成绩(见图5)。登分时,登分人员根据此表,就可以从登分系统中很快的调出登分表,根据学号顺序进行登分。
  如果把将“xxdm”拖到“页”栏目中,则可以根据选择的学校代码查看相应学校的考生成绩,便于分学校打印成绩单,见图6。
  4)获取多种报表
  利用这个数据源,我们可以得到其他的统计报表。
  为了得到更具体的信息,可以把“Bdm”和“Bjmc”拖入“行”栏目,就能看到各个教学点的各个班的学生的考试成绩,更加方便数据的查找。
  把“xxdm”、“xxmc”字段依次拖入“行”栏目,把“xh”拖入“数据”栏目,把“xh”的汇总方式改为计数,就可以得到各个教学点的考试人数。
  当新教务管理信息系统数据库的数据和无纸化考试考务系统数据库的数据更新后,只需要把ACCESS数据库中的“v_学生基本信息表”和“学生成绩表”删除,再导入这两个表,在透视表中选择通过点击鼠标右键弹出菜单中的【更新数据】按钮,就可以把报表中的数据更新,保证数据的准确性。
  
  3 结束语
  
  通过以上例子可以看到,EXCEL的透视表功能很强大、操作简单方便,是我们用来进行数据汇总、分类以及统计的好工具。在电大考务工作中合理地使用Excel的透视表,能够使我们的考务工作更加方便,更加科学,工作效率更高。
  
  参考文献:
  [1] 杨正洪,郑齐健,孙延辉,等.中文SQL SERVER 2000关系数据库系统管理和开发指南[M].
  [2] [美]John Walkenbach.中文版EXCEL 2003宝典[M].
其他文献
摘要:音频采集和录制软件是多媒体技术中的一个重要组成部分。本文利用BodandDelphi开发平台,介绍了结合Mediaplayer控件定义声音文件过程,给出了实现录音程序设计的方法和步骤。
期刊
摘要:随着科学技术的高速发展,计算机在科研方面的应用已经日益广泛。如何更有效、更方便地组织好、管理好各种活动,一直是人们普遍关心的问题。而这一点正是计算机的强项。计算机在数据计算、统计方面有着无可比拟的优势:速度快、不易出错、利于管理、数据重复利用易于保存。所以利用计算机进行水电费查询及管理是大势所趋。而适用这种管理的软件是非常重要的。如果能够编写出一个高效、方便的水电费查询及管理系统软件,必然会
期刊
摘要:提出了一种基于VPN与OPC的多校区校园配电管理系统的网络构建方案。利用VPN技术解决了电力远程监控在公网中数据传输的全性问题,并采用OPC技术为现场设备与应用软件提供统一的接口规范,解决了电力通讯接口复杂、实施困难等问题,方案简单易行,且十分经济。
期刊
摘要:通过介绍当前高等教育考试方法改革现状,构建一种基于c/s模式的网络考试管理系统,分析了系统构成和工作原理。并比C/S模式和B/S模式的特点。讨论了Socket套接字通信机制。
期刊
摘要:该文介绍了微型飞行器在空中所拍摄的经压缩后的Mpeg4图像信号与飞控计算机下行遥测数据的混合编码技术。提出并实现了一种改进的基于扩展频谱的视频编码方案。该视频编码方案在不降低视频质量的基础上,能够抵抗多种干扰和攻击。具有良好的稳定性和鲁棒性。
期刊
摘要:将RgPCA算法应用于表情图像的特征提取。其核心思想:先用PCA处理表情图像,提取表情特征;然后,将此表情特征集作为一个粗糙集用FAI算法进行约简,从而实现表情特征选择。RgPcA算法继承了PCA在特征提取时的简洁,并充分考虑模式分类的要求。提高了特征选择的科学性。
期刊
摘要:该文主要讨论的是无刷直流电动机启动仿真。首先建立了无刷直流电动机的数学模型,然后详细讨论了无刷直流电动机的三相导通三相星形六状态下磁势随电流流向的改变而改变的情形并给出了启动过程的动态仿真。最后给出了仿真的结果。该文还讨论了电动机参数改变情况下的仿真结果的变化。
期刊
摘要:近年来,大型金融企业制定IT发展核心战略,实现业务数据集中处理,保证数据大集中系统稳健运行。本文给出了详细的银行、金融机构信用卡系统解决方案,依托IBM 大型机建立高效、灵活并实时响应的技术平台,为广大用户群体提供强有力的业务支持。  关键词:z/OS;大型主机;信用卡  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2009)15-3843-02    Credit
期刊
摘要:该文提出了一种基于DCT变换域的数字水印算法,主要思想是利用密钥分散将原始二值水印图像经Amold置乱加密后嵌入到原始图像中。并通过Madab实现了该算法。实验结果表明,该算法具有良好的不可感知性和鲁棒性,能有效抵抗裁剪、噪声等攻击。
期刊
摘要:简单分析Windows 下串口通信方式, 详细介绍了使用 串口通讯库PComm实现特殊波特率的方法。  关键词:串口;特殊波特率;PComm库  中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2009)15-3871-03    Realization of SpecialBaudRateBased on VC++  LIU Kui  (Zhejiang Textil
期刊