




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录TOC\o"1-5"\h\z\o"CurrentDocument"摘要 2\o"CurrentDocument"Abstract 3\o"CurrentDocument"第一章人口调查统计分析系统研究背景、意义 4\o"CurrentDocument"1国外的研究技术 4\o"CurrentDocument"2我国内的人口统计现状及需求分析 5\o"CurrentDocument"第二章人口调查分析系统的总体分析 6\o"CurrentDocument"1系统总体结构和流程设计 6\o"CurrentDocument"2运行环境 8\o"CurrentDocument"3性能需求 8\o"CurrentDocument"第三章人口统计分析系统的技术分析 9\o"CurrentDocument"1编程环境的选择 9\o"CurrentDocument"2DBMS的选择 93技术难点 10\o"CurrentDocument"第四章人口调查统计分析系统的实施 11\o"CurrentDocument"1基本处理流程和功能模块 11\o"CurrentDocument"2数据模块的实现 124.2.1程序设计 124.2.2数据库的设计及连接 144.2.3SQL优化查询 15\o"CurrentDocument"4.2.4统计分析结果的输出 16\o"CurrentDocument"第五章总结 17\o"CurrentDocument"1系统特色 17\o"CurrentDocument"2系统实现的功能 17\o"CurrentDocument"5.3系统性能 17第六章结束语19参考文献19摘要人口调查统计分析系统是典型的信息管理系统,它能高速而又准确的对人口调查数据进行查询分析,能针对要求而实现数据统计,并输出报表,从而大大提高相关部门的工作效率。文章通过对系统的背景研究,需求分析,技术难点和实现方法等几个方面系统的阐述了开发实现的过程。即优化SQL查询,把多重循环和数组相结合,从中找出最优查询路径,实现快速遍历。整个系统主要分四大模块:数据录入,数据校验,数据统计和数据上报。系统实现的部分基本能满足开发者的要求,达到预期目标。关键词:信息,人口,数据,统计AbstractTheCensus DataStatis tic& Analysis Systemisatypical informationmanagement system.Itcan implementthefunctionofdatastatistic byrequiring,andanalysis theinvestigatedata exactand efficacious,andthen printoutthereportforms. Thesystem canimp rovesome departments’working efficiency.Thetexthasintroduced theproc essof complementthroughthe system’sbackground,necessary analysis, hardy technologyandthemethodofachievement.Themethod isoptimiz ingSQ Lsearching,andcombined layersofcyclewitharray.Wecan findtheoptimized pathtosearch,andfinish thescanfast.Keywords:Thewholesystemincludesfourparts:thedatainput,thedatacheckout,thedatastatisticandthedatareport.Thepartsofcomplementhavesatisfiedthedevelopers’demand,andfinishedtheprospectivegoals.Keywords:information,population,data,statistic第一章人口调查统计分析系统研究背景、意义20世纪人类最伟大的成就莫过于信息技术。信息产业的发展,使人们的视野越来越开阔,人们的活动范围越来越大,甚至虚拟无限。地球变得越来越小,产品的生命周期也变得越来越短。经济信息化,市场全球化,竞争激烈化,给企业带来的是一个飞速变化的、动态的、不确定的外部环境。过去封闭的、静态的企业运作模式已不再能适应今天世界环境变化的需要,企业正在经历一个彻头彻尾的变革。从数据处理到过程自动化,管理控制决策,再到支持企业获得战略优势,信息技术渗透到企业的每一个角落。人口调查统计分析系统是典型利用信息技术实现管理的信息管理系统。人口信息是国家的基础信息之一。为了准确、及时地掌握人口变动以及人口计划执行情况,为各级政府制定国民经济和社会发展计划提供可靠的人口数据,统计部门每年都要进行人口变动抽样调查。由于我国由计划经济向市场经济体制的转换,社会、经济、文化构成向多元化方向发展,受户籍制度的改革也受社会结构转型的影响,人口数据分析、调整和间接估计等任务将异常繁重,尤其是对人口数量、质量、结构、水平、过程和发展趋势等一系列问题的研究和评判将直接影响到人口与计划生育政策的制定和实施,影响未来中国人口发展过程和发展趋势。同时,由于人口过程具有长周期、不可逆和滞后性,因此任何决策失误都会对未来中国社会发展导致不堪设想的严重后果。为了弥补人口普查数据的缺陷就必须对人口普查数据的问题所在进行全面、详细的分析和评价。1.1国外的研究技术查阅了很多文献资料,我发现现在的人口统计方法并不多。其中最典型的人口统计研究技术是ESRI公司的GIS产品和技术。它在数据管理和提供Internet服务方面为调查统计带来了十分的方便。GIS(GeographicInformationSystem)即地理信息系统,是一种利用地理信息来帮助做出决定和解决问题的方法,它可以对在地球上存在的东西和发生的事件进行成图和分析。GIS技术把地图这种独特的视觉化效果和地理分析功能与一般的数据库操作(如查询和统计分析等)集成在一起。该技术被用来做人口统计系统的关键点就是将人口数据与地理信息相结合。目标就是让用户通过图形界面获得指定地理位置的准确人口数据。因为人口数据庞大而且格式非常复杂,国家数据中心的许多用户要直观地看到很大地理范围内的人口数据的图形显示是非常困难的。为了满足这些不同的需求,ESRI公司充分利用自己在GIS和空间数据库管理领域的专门技术,即:DADS将管理几个TB(1T=103G)的数据,包括用于政府内部的数据和政府用户以外的数据,其中采用了SDE的海量空间数据管理技术。除了提供SDE软件,ESRI也提供数据库设计,系统设计,和数据转换的咨询服务。ESRI的重点在于将GIS功能集成到人口普查网页,在Internet上提供信息服务,使用户能够通过Web访问DADS,以查询地理、人口、经济及其它数据,且能够用查询结果来生产详细的专题地图和各种统计图。整个项目建立在ESRI的ArcIMS产品之上,ESRI的Internet技术可以为用户提供基于浏览器的针对地理信息的浏览、查询,以及图形显示、标注和量测。每周都有最新的统计数据进到数据库,而ArcIMS技术能够实时发布最新的数据信息和专题地图。通过在网上采用ESRIGIS技术,人口统计局将以最少费用,为用户提供丰富的、全面的服务。跟他们不同的是,他们是基于地理信息而获得人口数据,我们是基于人口调查表来得到人口数据的,因此使用的统计方法也有所不同。1.2我国内的人口统计现状众所周知,中国是个人口大国,在这么大一个国家要想做好人口统计工作确实是一件不容易的事。而且改革开放以来,东部沿海地区经济的迅猛发展,劳动力的需求增加,导致了人口流动的加大,外来人口规模扩大,更增加了调查对象的复杂程度和组织调查的难度。我国现行的户籍制度、人口流动特征决定了人口统计的方法有以下两种方式。一种是我国的年度人口统计仍然是以公安部门的户籍统计为主要依据,到外地或进城打工的农民,由于户籍管理地未变仍统计为本地的农村人口。而我国的人口普查方法对常住人口的统计则较为合理,只要在一个地方居住达半年以上者,不管是否取得当地户口,均作为当地的常住人口统计。我国于1987年制定的《统计法实施细则》规定了每10年一次进行人口普查,在年号末尾为0的年份进行。《统计法实施细则》还规定,在两次人口普查中间年份进行一次人口状况的简易普查。因此,每逢年号末尾为5时,就进行1%人口抽样调查,也称为“人口小普查”。“小普查”的内容、组织实施形式和数据发布时间与方法等,都与大普查相似。从1983年开始,我国还有一项正式的调查制度,就是每年10月对人口变动进行抽样调查,目的是为国家和省(区、市)掌握年度人口总数以及结构变动情况,提供可靠的人口数据。每年的5月、10月、和12月还进行劳动力抽样调查,以统计就业和失业状况。面对这么多种类的人口调查情况,无论哪种调查方法,它们的调查内容都是一样具体,涉及面一样广泛,调查点一样繁多,所得到的数据量都是非常庞大的。对于这么大量的数据,没有一个有效的统计管理系统,以传统的人工统计的方法,尽管工作人员加班加点日夜埋头苦算,得到的统计结果还是不尽人意。被一大堆数据困扰不说,不仅不准确,还很费时间。每次人口普查的统计结果数据都要几个月甚至几年才出来。这种传统手工或半手工的效率、准确度和可信度都远远不能满足我们的要求。当然我们可以借助于上面提到的GIS技术产品,来解决我们的统计难题,但那所需要投入是巨大的,而且也不一定适合我国的国情。因此,开发一个低成本的、适合我国实际情况的、又能高效率解决人口统计实际问题的软件系统,不仅必要,而且也是可能的。第二章人口调查统计系统的总体分析本软件旨在对各种各样的人口调查,如:劳动力、婚姻状况、就业、受教育程度、年龄结构等纷繁复杂的调查统计工作提供一个功能齐全,效率较高的数据库管理系统。为了实现上述功能要求,本系统至少需要四大功能模块:数据录入,数据校验,数据统计和数据上报。分别用于实现人口调查中各项指标的输入、分类、统计、分析、汇总和输出,其中需要解决的主要问题有:人口调查原始数据库的维护;录入数据的复验与修正;各项人口调查指标的统计、分析、汇总;统计分析报表的生成与打印。2・1系统总体结构和流程设计以下用图示法直观的给出系统结构框架:系统总体流程图:
系统功能模块层次结构图:数据流图:2・2运行环境硬件环境:CPU:PentiumII或以上;内存:N64M;打印机:可选。软件环境:MicrosoftOffice97 /2000/XP;操作系统:Windows98/2000/XP;数据库管理系统:MicrosoftAccess97/2000/XP。用户界面:•采用Windows通用图形用户界面,对用户友好,操作简便;•提供完善的错误处理及录入保护措施。2・3性能需求1) 查准率要求本设计做的是统计系统,对数据精确度的要求自然是非常高的,在查询要严格保证查询到的所有数据都是所需要的,如果连数据准确性都不能保证,统计分析又从何谈起?2) 查全率要求既然是统计系统,对数据完整性要求同样是非常高的,要求对满足查询要求的所有记录都无一遗漏,否则,统计分析便无任何价值和实际意义。3) 查询速度要求对于人口统计这样庞大的数据库以及这么复杂的分析统计要求,如果不追求系统的优化,那么整个查询将可能会消耗大量的时间,降低计算机与人员的工作效率,因此,对查询速度应该提出一定的要求。第三章人口调查分析系统的技术分析3・1编程环境的选择为了能很好的完成上述系统,实现该系统的功能,本设计选择了VisualBasic作为前端开发工具。VisualBasic是使用最为普遍的程序语言,它简单的操作界面,易理解的语言表达方式,功能强大的应用组件以及强大的窗口界面支持功能,明显降低了图形操作界面应用程序的开发门槛,使得程序功能的实现变的相对容易。VisualBasic语言有以下特点:•可视化设计、调试环境,图形用户界面;•面向对象的设计方法(利用大量现成构件);.事件驱动的编程机制(由用户来控制程序流程);•结构化的设计语言(细化程序单元,便于调试和维护);•资源高度共享(Windows,C++,Office等等资源 );•开放的数据库管理功能及远程网络访问支持;•可以编译生成快速执行的机器语言;•可以使用Win32应用程序接口函数生成多线程程序;•带有语句生成器,可以使用户无需记忆它的属性和方法,快速的创建应用程序;•可以创建自己的ActiveX部件,再利用此部件编译程序;•可以通过ActiveX部件,开发功能强大的Internet和WWW应用程序。3・2DBMS的选择为了保证这么大量数据的安全和一致性,对DBMS(数据库管理系统)的选择是至关重要的。Access2000是新一代桌面关系型数据库管理系统,具有使用方便、运行可靠、兼容性好及功能强大的特点。在单机环境下且数据记录不是很多(20万条以下)时,它的性能不亚于大型数据库,因此,在用户数量不多、并发要求不是很高的场合下,用Access作为后台数据库是既经济又能保证性能的选择。而且VisualBasic对Access数据库的集成也非常紧密,VB提供了现成的数据访问控件、数据访问对象、数据环境、ODBCAPI等多种方便有效的对数据库访问的手段,使得应用程序对数据的请求、查询、维护等操作简便容易。两者的结合可以说是天衣无缝的。3・3本系统的技术难点劳动力和社会保障状况调查问卷统计分析工作是一项非常繁重、细致、耗时、费力的劳动。由于调查涉及面广,调查对象是对全体公民,调查内容项目繁多,所以统计数据量极大,要处理的表、字段、记录众多,逻辑关系错综复杂,数据库设计难度大,尤其是当调查问卷数据量剧增、调查项目分类繁杂、统计逻辑组合条件众多、问卷填写又不规范的情况下,其技术的要求度之高是可想而知的。例如:我们的某一项查询中就有以下这么多约束条件:1、 被调查人群所属的地域性质:城市、集镇、农村;2、 被调查人群的就业、待业、失业、丧失劳动力、不愿意工作……;3、 被调查人群的年龄范围;4、 被调查人群的受教育程度;5、 被调查人群的性别;6、 被调查人群的居住地;每个约束条件都相互嵌套,互为约束,在一个有数十万条记录的数据表中,将形成一个非常复杂而庞大的查询。就上述难点本文归纳提出以下两个解决思路:一、 如何提高统计速度对于大量的统计数据和查询组合条件,如果没有很好的程序设计,其统计速度是十分缓慢的,可以是几天甚至几个月,得到的结果还有可能只是一部分而不是全部。因此在本系统的设计中,我们十分注意这点,充分利用了SQL优化设计,大大提高了统计速度,下面是本设计中采用的几个基本思路:1) 在程序中合理的使用索引来更快地遍历表根据不同的条件,建立不同的群集索引,非群集索引或组合索引等,能使对表的遍历限定在一定的范围内,从而加快查询的速度;2) 避免或简化排序避免不必要的排序,合理地合并数据库表;对于不能避免的排序,那么简化它,缩小排序的列的范围;3) 消除对大型表行数据的顺序存取在程序中,我们使用了多重嵌套循环,最多的达上十重的循环嵌套,避免这种情况的主要方法就是对连接的列进行索引;4)避免相关子查询二、 如何理清错综复杂的逻辑关系本系统还有一个关键技术在于在多重循环嵌套下的复杂逻辑关系。从各个查询子集中获取最小交集的最优线路,程序中的所有查询都使用了多重循环嵌套配合数组的技术,以实现对复杂条件的查询。随着表的复杂度增大,嵌套的循环重数也越多,最多甚至达到十几重!本设计就是合理的运用好了逻辑关系,让程序在这么多重的循环中,仍然能实现快速的遍历查询。第四章人口调查统计分析系统的实现4.1基本处理流程和功能模块1) 基本处理流程a、 进入系统,激活主模块,判断是否需要转换数据库;b、 不需要转换数据库,转d;c、 需要转换数据库,进行数据库转换,再转d;d、 激活数据统计模块,选择统情况:逐表统计,转e;全部统计,转f;e、 选择要统计的表,进行统计工作,输出到g;f、 统计全部的报表,输出到g;g、 将统计结果写入Excel表,打印;h、 结束,退出。各模块的运行时间都控制在5-20秒内(其中大部分为响应用户的动作)。2) 功能划分:本系统主要包括以下功能模块:•数据录入:包括数据转录,数据转换,数据备份•数据校验•数据统计:包括逐表统计和全部统计•数据上报3) 功能描述:•数据录入:转换部分将原数据库中的部分数据类型进行必要的转换,以适应统计查询的速度和精度要求;备份部分在合并数据或手工修改数据前,可以利用此功能对数据库进行备份。•数据校验:对程序中非字符型数据进行扫描并记录,方便用户对非法数据进行修改。•数据统计:即可以根据要求有需要的选择统计表,也可以一次性全部统计报表。•数据上报:即打印报表,实现统计表的打印功能。4.2数据统计模块的实现本系统的最主要部分是数据的统计的分析,其研究的关键在于如何对数据量极大的数据库进行高速查询和统计。提高速度是重点,这就要看程序设计与数据库设计的技巧以及SQL语句的优化。4.2.1程序设计对于前面变量的定义等我们就不赘述了,程序的主体部分,主要是在众多约束条件的限制下对SQL查询的描述。以下是本设计中按居住地区、城乡特征、年龄、性别、受教育程度分的经济活动人口调查表的程序实现片段:ForScope=1To3 '统计范围:市、镇、乡scopeSel="andszx='"&Trim(Str(Scope))&"'"ForGroup=1To3 '统计人群:全体、就业、事业SelectCaseGroupCase1Employment=""Case2Employment=Employed'"and(p15='1'orp161='1')" '就业Case3Employment=Unemployed'"andp15='2'andp161in('2','3','4','7')and(b14='1'orb19='1')" '失业EndSelectForLevel=1To11 '11种文化程度levelSel=IIf(Level<10,"0"&Trim(Str(Level)),Trim(Str(Level)))ForSex=1To2 '性另ijsexSel=Trim(Str(Sex))Age16=8706 '16岁界限划分Age=1SetRS=Db.OpenRecordset("selectp02from"&TableName&"wherep02='"&sexSel_&"'andp03between"&Trim(Str(Age16))&"and"&Trim(Str(Age16-400+1))_&"andp09='"&leveISel&"'"&Employment&scopeSel,dbOpenDynaset)IfNotRS.EOFThenRS.MoveLastCallAddData(Age,Sex,RS.RecordCount)EndIfAge16=Age16-400ForAge=2To10 '11个年龄段SetRS=Db.OpenRecordset("selectp02from"&TableName&"wherep02='"&sexSel_&"'andp03between"&Trim(Str(Age16))&"and"&Trim(Str(Age16-500+1))_&"andp09='"&levelSel&"'"&Employment&scopeSel,dbOpenDynaset)IfNotRS.EOFThenRS.MoveLastCallAddData(Age,Sex,RS.RecordCount)EndIfAge16=Age16-500NextAgeSetRS=Db.Ope nRecordset("selectp02from"&TableName&"wherep02='"&sexSel_&"'andp03between"&Trim(Str(Age16))&"and1andp09='"_&levelSel&"'"&Employment&scopeSel,dbOpenDynaset)IfNotRS.EOFThenRS.MoveLastCallAddData(Age,Sex,RS.RecordCount)EndIfNextSexNextLevelNextGroupNextScope本程序将统计并输出36张如下图所示的报表:
表22按砰龄、性别、受教育程度分的经济活动入口(城镇)受我育理度和年凹别16拧及以上人口经济活动人口就业人口失业人口合计男女合计男女小计另女小计男女甲123456729101112总计2^41712182122351挪3900464291卯&426416123669363306岁1412749泡19116331116115043301320-24岁178&901既二2。618捋6折91D5663925-29^2297109112061G031D2487&1S339743299750473Q-34岁297714491L2324931373111523311339IDLE1D239G3珞明岁317315601C132C741473120125381426114210647S9』。二4岁2GO31322127321431237911205G1191或592464609岁27611401二6)21031261842201612073C9E75433204710501246泗3E11219242377272349"9岁141567274j(04431173595423172g8160-64岁1025529斯254155&勺25418569000员岁茂以上292?14531疵257B033625779101图-1按居住地区、城乡特征、年龄、性别、受教育程度分的经济活动人口调查表4.2.2数据库的设计及连接创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、逻辑严密的。创建一个数据库结构的过程被认为是数据模型设计,下面我们用E-R图来描述本设计中数据的概念结构:总E-R总E-R图:分E-R图:这里只是举个例子,其他的具体情况就不一一列举了。本系统中,我们使用数据访问对象(DataAccessObject,DAO)来连接VB和Access数据库。只需在菜单栏中的“工程 引用”中添加“MicrosoftDAO3.51objectlibrary”类库。再声明DAO提供的数据对象,并实例化该对象:SetDB=ws.OpenDatabase(DName)DName=App.Path+"\Database\"+"zjlab03.mdb"‘建立数据库连接4.2.3SQL优化查询本系统采取的是仅有一张数据库表的数据库(数据库是委托方设计的)的形式进行数据管理,把100多个字段都统一到一张表上来。这种方法虽然节省了多表连接的麻烦,但也增加了数据查询的繁琐性。从这么庞大繁杂的表中检索出符合条件的数据,再统计出来,对Select查询语句就要有一定的功底,是本系统需要解决的难点。在做查询之前,我们一定要对调查统计表非常熟悉,了解各个字段所代表的含义,例如:ma1为受访地区,hlx为调查情况完成与否等。如在hlx字段中,又有:1代表完成,2代表拒访,3代表未遇,4代表其他情况。下面是本设计中一个比较简单的SQL查询的例子:"selectp02from"&TableName&"wherep02='"&Trim(Str(Sex))_&"'andma1between'"&CodeSel&Employment&scopeSel&LegalAge可以看出其中有6个约束条件,如果不作优化,那么,在一个50000条记录的表中实现该查询,就将扫描10000000条记录!2)我们使用DDL命令创建和删除临时索引,以提高查询速度:Db.Execute”CREATEINDEXma1ON”&TableName&”(mal)”Db.Execute”CREATEINDEXhlxON”&TableName&”(hlx)”
Db.Execute”DROPINDEXma1 ON”&TableNameDb.Execute”DROPINDEXhlxON”&TableName4.2.4统计分析结果输出本系统需要统计分析并输出的报表共有150余种,数百张,典型的报表样式均为统计部门定义的专业样式,如下图:MicrosaftE«cel-表图-2按地区、年龄、性别、户籍分类的常住人口统计表因此本系统还有一个值得一提的地方在于使用了Excel表做统计分析报表结果的输出,既清晰简洁又方便输出,还可以供用户进行二次编辑利用和方便存档查询。第五章总结5.1本系统特色系统界面友好,使用简单方便,保护措施完善,对所有的输入项均会进行合法性检查并且自动跳转,保证错误数据不能进入数据库,同时保护系统不至于意外崩溃,并且会适时弹出提示对话框对用户进行提示指导,此外,系统还带有详尽的帮助文件。系统可以对已经录入的数据库进行逻辑关系审查,以找出那些填写不正规的问卷中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业道德与合规的内在联系
- 培养教育领导力的有效途径
- 项目化学习与语文教学的协同发展
- 牦牛繁育技术的创新与应用
- 健康数据标准化与人工智能的协同发展
- 医疗卫生行业探秘
- 电化学储能电站项目建设条件
- 2025年机械治疗及病房护理设备项目规划申请报告模板
- 骨科气压治疗仪应用指南
- 2025年高效余热回收装置项目规划申请报告模板
- 讲解员笔试试题及答案
- 学校校园膳食监督家长委员会履职承诺协议书
- 2020年1月国家开放大学汉语言文学本科《中国当代文学专题》期末纸质考试试题及答案
- 重点人口管理工作规定
- T-CALC 005-2024 急诊患者人文关怀规范
- 大车司机考试试题及答案
- 高中主题班会 《珍爱生命 远离毒品》毒品预防主题班会
- 大竹县竹中中考数学试卷
- 新公司法下企业减资的税务处理探析
- 中医诊断学(浙江中医药大学)知到课后答案智慧树章节测试答案2025年春浙江中医药大学
- 现场组焊施工方案
评论
0/150
提交评论