VFP与SQL SERVER 构建C/S系统研究与实践

来源 :高校教育研究 | 被引量 : 0次 | 上传用户:svennis
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】本文闡述了运用VFP和SQL SERVER 建立C/S系统软件的方法。Visual Foxpro编程简单,容易掌握等特点被广泛应用;SQL SERVER因为自身强大的数据管理功能及安全保密性高等优势而发展成为关系数据库的标准语言。本文用VFP语言编写C/S系统的客户端管理软件,用SQL SERVER 对C/S系统的后台数据进行管理,提供数据服务。
  【关键词】SQL SERVER Visual FoxPro 数据升迁 ODBC数据源 远程视图
  【中图分类号】G623 【文献标识码】A 【文章编号】1009-9646(2008)07(b)-0160-02
  
  1 引言
  
  随着计算机的普及,数据库管理软件也在飞速的发展。用VFP编写传统的单机版数据管理软件已经不能满足当前的应用要求,取而代之的是C/S系统,它已经成为了当前数据管理软件发展的必然趋势。但对于一些早期使用VFP编写数据管理系统的行业来说,彻底更换系统可能导致数据无法转换等一些困难。本文就针对此类情况介绍用VFP和SQL SERVER建立C/S系统软件。这样不仅可以兼容原来的数据,而且又可以为以后的软件升级作好准备。
  
  2 VFP数据库管理软件的发展现状
  
  80年代初,最流行的数据库系统是dBase III和FoxBase,相对于dBaseIII而言,FoxBase更容易上手,同时它还能与dBaseIII相兼容。大多数行业的数据库管理软件都是采用FOXBASE设计的。而VFP也以其自身的数据处理速度开发速度、伸缩性及开发成本赢得了用户的亲睐。软件日新月异。人们关注更多的是安全性、共享性和保密性等问题,而VFP在这些功能上显得有些滞后,这样VFP也渐渐的从主流的数据管理软件中退出了,取而代之的是更先进的RDBMS。
  VFP数据管理系统存在的主要的问题有:第一:数据缺乏安全性、共享性与保密性。第二:数据管理功能不强。第三:开发C/S网络系统、多媒体系统、WEB程序难度大。
  
  3 VFP和SQL SERVER 建立C/S系统的优势
  
  3.1 C/S系统的优势
  3.1.1 支持多用户
  3.1.2 支持远程操作
  3.1.3 高效的数据管理
  3.1.4 数据安全性高
  3.2 Visual FoxPro 系统广泛的用户群和对原有数据的兼容
  Visual FoxPro 系统由于早先的流行而存在大量的用户群。用它开发的系统容易被迅速掌握使用。同时FoxPro包含了大量访问后端信息的途径,加上相当快的本地数据库引擎和数据字典,它提供了客户/服务器开发所需的功能。并且选用VFP来做考勤管理的客户端,就可以直接兼容原有的大量数据库表中的数据,不需要再进行数据转换。
  3.3 SQL SERVER 数据库管理功能强大
  SQL SERVER是一个关系数据库管理系统,SQL SERVER 是属于关系数据库管理系统,但功能又不仅仅是数据管理。而是一套功能强大的软件系统,可以安装在专门的NT DATA SERVER上,也有个人版可以安装在WIN95/98上。功能主要有:数据库的管理和维护,用户/安全管理,数据的发布/ 转换。
  3.4 VFP/SQL SERVER系统开发灵活且容易维护
  C/S是中小型应用系统的趋势。用VFP本身来做C/S系统并不明智,因为VFP的数据管理功能无法与SQL SERVER 系统相提并论,而且程序设计的难度太大。用VFP和SQL SERVER建立C/S考勤管理系统程序简单,容易维护。
  
  4 用VFP和SQL SERVER开发C/S系统的过程
  
  4.1 将VFP的相关数据升迁到SQL SERVER中
  升迁VFP的数据库,可以直接用VFP自带的升迁向导转到SQL SERVER上,但必须把所有的表都放到数据库中,自由表不能直接升迁。要把VFP数据升迁到SQL SERVER上,必须先在SQL SERVER里建立相应的数据库。SQL SERVER的管理是通过Enterprise Manager(EM企业管理器)来进行的。通过它建立数据库,每个数据库里可以包含数据表、用户/用户群、存储过程等等。改用SQL SERVER后,原来的VFP程序是需要进行修改的。
  4.2 设置和删除ODBC数据源的程序实现
  用API函数来设置和删除ODBC数据源,避免手工设置的繁琐。函数SQLConfig Data Source,其中第二个参数是数字(1-增加,2-修改,3-删除)
  DECLARE INTEGER SQLConfigda tasource in ODBCCP32 INTEGER,INTERGER,STRING,STRING
  InWindowHandle=0
  LcODBCDrive=’SQL SERVER’ &&驱动类型
  LcODBCNAME=”TO_GDK” &&数据源名字
  LcODBCDESC=”到归档库” &&数据源描述
  LcODBCDATABASE=”AHZK” &&要连接SQL SERVER上的数据库名称
  添加新的ODBC
  lreturn=SQLContigDataSource(InWindowHandle,1,LcODBCDriver,;
  ’DSN=’+lcODBCName+CHR(0)+’Description=’+LcODBCDesc+CHR(0)+’SERVER=’;
  +LcODBCServer+chr(0)+’Database=’+lcodbcdatabase+chr(0))
  iflreturn=0&&失败
  messagebox(‘添加ODBC失败’,16,’buffer’)
  endif
  删除ODBC数据源。用完后,可以在表单DESTROY事件里删除。
  Declare integer SQLConfigDataSource IN ODBCCP32 integer,integer,string,string
  Inwindowhandle=0
  Lcodbcdriver=’SQL server’&&驱动类型
  Lcodbcname=’to_gdk’ && 数据源名字
  Lcodbcdesc=’到归档库’ &&数据源描述
  Lcodbcserver=’sql_name’ && SQL SERVER名称
  Lcodbcdatabase=’awhy’ && 要连接SQL SERVER的数据库名称
  先修改,判断其是否存在
  lreturn=SQLconfigdatasource(Inwindowhandle,2,lcodbcdriver,’DSN=’+lcodbcname+chr(0);
  +’description=’+lcodbcdesc+chr(0)+’database=’+lcodbcdatabase+chr(0);
  +’database=’+lcodbcdatabase+chr(0))
  if lreturn=1&&ODBC存在,刪除它
  lreturn=SQLConfigdatasource(inwindowhandle,3,lcodbcdriver,’DSC=’+LCODBCNAME;
  +CHR(0)+’Desciption=’+lcodbcdesc+chr(0)+’server=’+lcodbcserver+chr(0);
  +’database=’+lcodbcdatabase+chr(0))
  if lreturn=0
  messagebox(‘删除ODBC源失败’,16,’buffer’)
  endif
  endif
  clear dlls &&清除DLL
  4.3 从VFP连接到SQL SERVER的程序实现
  conn_stu=’dsn=to_gdk;uid=sa;
  storesqlstringconnect(conn_str) to gnconnhandle
  ifgnconnhandle<0
  messagebox(‘cannot make connection’,16,’error’)
  else
  messagebox(‘connection made’,48,’connection’)
  sqldisconnect(gnconnhandle)
  endif
  建立‘远程连接’
  create connection myconn connstring &conn_str
  4.4 远程视图的建立和删除的程序实现
  建立远程视图
  open database awhy.dbf exclusive &&打开本地数据库awhy.dbf
  假设以SQL上数据库中t_ks表建立远程视图,视图名为myview1
  create sql view myview1;
  remote connection myconn AS;
  select * from t_ks where t_ks,ks_zkz=’901008’ order by t_ks
  删除远程视图
  close all database
  open database awhy.dbf exclusive
  set database to awhy.dbf
  myviewname=’myview1’
  dele view &myviewname
  pack database
  4.5 使用SQLEXEC对远程数据库的表进行添加、删除、更新和查询的程序实现
  首先用SQLSTRINGCONNECT(conn_str)建立远程连接,成功后直接使用create table、drop table、update 和select的SQL语句。
  Sql_add=’create table t_ks2(zkz char(10))’
  Sql_update=’update t_ks set jtdm_dm=’ ’+’2601’
  Sql_dele=’drop table t_ks2’
  Sql_que=’select * from t_ks’
  SQLEXEC(gnconnhandle,sql_add) &&增加表
  SQLEXEC(gnconnhandle,sql_dele) &&删除表
  SQLEXEC(gnconnhandle,sql_update) &&更新表
  SQLEXEC(gnconnhandle,sql_que) &&查询表
  通过以上几个步骤已经在VFP中用程序的方法建立了与SQL SERVER的连接和数据交换。用VFP编写客户软件就很容易了。
  
  5 结语
  
  本文是在实际应用当中总结出的开发C/S系统软件一些比较常用的方法,对于被广泛采用的VFP语言以及灵活又实用的SQL数据库而言,提供了一个极好的相互连接的桥梁。
  
  参考文献
  [1] 史济民,汤观全等著,FOXPRO及其应用系统开发,清华大学出版社,2000.12.
  [2] Ray kankins,Paul Jensen, Paul Bertucci.SQL SERVER 2000实用全书[美国].北京:电子工业出版社,2002.9.
  [3] 范立南,VISUAL FOXPRO程序设计与应用[M],北京:电子工业出版社,2004.
  [4] 孙秀钰,VISUAL FOXPRO程序设计[M]北京:中国电力出版社,2004.
其他文献
【摘要】 生物学双语教学是目前高校生物教育改革创新的重要内容,在此教育中要明确双语课教学目标,引进高水平的师资队伍和高质量的教材,同时采用现代化的多媒体教学手段和尝试新型教学方法是高校生物学双语教学改革的关键。  【关键词】 生物学;双语教学;探讨  Thoughts on Bilingual Education in Biology  ZHANG Ming-zhou LIU Jun HU Hua
期刊
【摘要】为了适应社会对环境艺术设计专业的要求,从课程设置、教学方式以及教学效果评价体系等进行改革,以造就适用人才,更好地服务社会。   【关键词】应用型人才 改革 针对性 灵活性 适用性 重要性 可操作性 评价体系   【中图分类号】C961 【文献标识码】A 【文章編号】1009-9646(2008)07(b)-0027-02      环境艺术设计专业,在我国,最早是由中央工艺美术学院为了拓宽
期刊
【摘要】 教师的职业劳动是一种以人格来培育人格、以灵魂来塑造灵魂的劳动,教育过程自始至终都是一个人与人之间相互影响、相互作用的过程。尤其是中学教师的一举一动、一言一行对中学生人格的形成和发展产生重要的影响。中学教师的人格修养包括爱心,尊重、宽容、赏识,创新精神等,其培训策略应通过勤于学习,积极投身教育实践等途径,使中学教师人格完善与升华。  【关键词】 中学教师;人格修养;人格魅力;培训策略  B
期刊
【摘要】当今素质教育的核心是发展人的主体性。重视培养和发展学生的个性已成为当代教育发展的趋势。教师应在艺术课程中启发和培养学生的主体性,创造能力以及创新精神,是当代艺术教育的重中之重。   【关键词】个性 开发 培养   【中图分类号】G64 【文献标识码】A 【文章编号】1009-9646(2008)07(b)-0034-01      当今素质教育的一个核心是发展人的主体性。因此,对发展主体性
期刊
【摘要】 教学质量评价是一个涉及面较广的系统工程,受到诸多因素与条件的制约及影响,如何准确有效地进行教师教学质量评估,评估体系与方法的确定至关重要。本文建立了具有20个评价指标评价体系和三层神经网络的教学质量评价模型, 并进行了实证检验,结果表明,神经网络评价模型在教师教学效果评价中是可行的。    【关键词】 教学质量;神经网络;评价    【中图分类号】:G644【文献标识码】:A【文章编号】
期刊
【摘要】时下,多媒体课件已深度介入了高校各学科领域,外国文学课程教学也正在加速地多媒体化和网络化,如何利用好现代化教育a技术,如何驾御新形势、新条件下的外国文学教学,已经成了我们每一个高校外国文学教师必须面对的新课题。笔者根据自己自2000年来设计制作外国文学教学课件的经验,以及运用于课堂实践后的得失体会,就如何制作外国文学教学课件阐述以下粗浅陋见,抛砖引玉,与同行商榷、切磋。   【关键词】外国
期刊
【摘要】高等职业院校办出特色和品牌的关键在于核心竞争力的培育。如何培育高等职业院校核心竞争力?我们以为高等职业院校应当着眼宏观发展,从战略高度出发,强化自身优势,整合核心资源,增强差异性,创新组织和制度,构建战略联盟,全面更新高等职业院校的发展战略,培育核心竞争力。   【关键词】高等职业院校 核心竞争力 培育 战略   【中图分类号】G641 【文献标识码】A 【文章编号】1009-9646(2
期刊
【摘要】本文借助WEB2.0理念,结合严格的访问控制和二次鉴权方法提出对建设资源高度整合、权限范围内实现单点登陆全网通行的高校信息门户的建议,既顺应校园网络建设的发展趋势,也满足了校园用户进一步的需求,提高校务工作、学生学习效率,为提升我国高校信息化建设水平助一臂之力。   【关键词】高校信息系统 高校信息化 信息门户 资源整合   【中图分类号】G64 【文献标识码】A 【文章编号】1009-9
期刊
【摘要】基于OpenGVS和Multigen Creator开发出一套船舶实时仿真系统。针对本系统特有的场景,采用三维建模的方法对虚拟场景中物体的构造、场景的调入、事件驱动等进行了深入的探讨。实现了按照操纵者的意图从各个视角实现船舶操纵的方法,可以用来作为船舶驾驶培训的平台,也可以为以后进行船舶试验奠定基础。纯软件的实现方法达到了节约成本,降低风险的目的。仿真过程中充分体现了实时性和交互性的特点。
期刊
【摘要】机械原理课程设计是机械学习中的一个重要实践环节,应采用简单可行的方法。在传统的机械原理课程设计中,计算效率低,计算的结果还不准确,手工绘图精度不高,达不到理想设计的目的。本文从当前机械原理教学中存在的问题出发,以牛头刨床为实例说明了应用ADAMS虚拟样机软件进行机构建模和仿真分析,并阐明了该软件在机械原理教学中应用的意义。   【关键词】牛头刨床 ADAMS 机械原理课程设计 仿真   【
期刊