首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心计算机论文计算机应用
   如何提高Visual FoxPro的性能      ★★★ 【字体: 】  
如何提高Visual FoxPro的性能
收集整理:佚名    来源:本站整理  时间:2009-01-10 11:51:48   点击数:[]    

连接。

二、提高远程数据访问的性能
在任何后端数据库中检索数据是很费时的。为了加快数据的下载(或更新),可使用下面的方法。
1.只下载需要的数据

在一个应用程序的功能单元(比如,表单或报表)中,很少需要访问表中的所有数据。通过创建远程视图,只得到(或更新)我们需要的字段和记录,就可以减少通过网络的数据数量。例如,在我们的表单上有四个控件,分别绑定了远程视图的字段(客户标识号、公司名、联系人和来自客户表的地址),可使用SELECT
customer_id, company, contact, address FROM customers SELECT则会好得多。
2.使用一个 WHERE 子句
为了进一步限制下载(或更新)的数据数量,可以使用 WHERE 子句。对于上面的示例,如果我们只需要西南部的客户记录,我们视图的 SELECT
语句可以是:
SELECT customer_id, company, contact, address FROM customers
WHERE region = 'NORTHWEST'
Visual FoxPro 提供的视图灵活性以及 SQL Pass Through 技术使我们可以在 SELECT、UPDATE 和
DELETE 等 SQL 语句的 WHERE 子句中使用参数。例如,对于上例,我们可以使用参数在运行时刻下载任何地区的信息:
SELECT customer_id, company, contact, address FROM customers
WHERE region = ?pcRegion
式中,“pcRegion”是参数的名称。
3.使用正确的更新条件
视图设计器中的“更新条件”选项卡允许我们指定视图中的数据如何被更新(插入和删除)。在选项卡中的“SQL WHERE
子句包括”部分,我们可以控制 UPDATE 和 DELETE 操作中 WHERE
子句的内容。这对于在后端控制数据冲突是很关键的,对于改善性能也是很重要的。

因为我们向后端更新的字段总是可更新字段的子集(并且一定是视图中字段总数的子集),在大多数情况下都使用“关键字和已修改字段”选项。对于支持时间戳的服务器数据库,建议使用“关键字和时间戳”设置,这种更新方式比用“关键字和已修改字段”更快。
4.使用 BatchUpdateCount 属性
有些服务器 (例如 Microsoft SQL ServerServer ) 允许我们在一个单独的数据包中发送一批 SQL
语句,这个技术加速更新、删除和插入,因为通过网络传送的网络包的绝对数量减少了,而且服务器数据库可以成批编译多个语句而不是单独编译。
我们应该对于这个属性和 PacketSize
属性用不同的值来试验,以优化我们的更新。可以在“查询”菜单的“高级选项”对话框中设置该属性,或者通过 DBSETPROP () 或
CURSORSETPROP () 函数来设置。注意若要使用这个属性,必须通过调用 DBSETPROP () 或 SQLSETPROP ()
函数设置“Transactions”属性来启动人工事务。
5.使用 PacketSize 属性
PacketSize属性控制向数据库服务器传送和下载的网络包的大小(按照字节)。它实际上是由 ODBC
设置的,并且可以是任何非零值。不同的网络对该属性有不同的处理,因此我们应该参阅网络服务文档。该属性的默认值是 4096
字节。如果我们的网络支持更大的数据包,我们可以在每次请求 (SELECT、INSERT、UPDATE、DELETE)
时将该属性值增加以加大网络吞吐量。
6.使用 FetchMemo 属性
FetchMemo属性控制当从后端取得一个记录时是否也取得备注和二进制(通用字段)数据。请将该属性设置为
.F.,这样,直到真正需要时,才从网络传递数据,从而提高我们的查询取得数据的速度。
7.在本地机上保存查阅表

在很多情况下,我们的应用程序经常访问只读数据。例如,我们的应用程序可能会经常使用一个包括各个公司人员的档案表,将这些数据保存在本地机上(也就是,不把这些表装在服务器上),查询会更快。对于从不更改或很少更改的数据,这个技术会很有用。
8.使用本地规则
几乎很少有人知道,Visual FoxPro
在本地和远程视图中也支持字段级和记录级规则。这些规则是为了防止与数据或商业规则不符的数据进入数据库。可以将这些规则放在视图中,而不仅仅放在后端表中,这样作的好处是:在无效数据通过网络传送之前就可捕获它。缺点是:这些规则并不自动与后端服务器表上的规则相匹配。因此,如果后端表规则更改了定义,必须人工更改本地定义的视图中的规则。但是,如果规则很简单,这也不是一个很大的负担。另外,规则定义并不经常改变,因此我们也不必担心会经常更新本地的规则。

三、改造表单对象性能
1.使用数据环境
在“表单设计器”或“报表设计器”中使用数据环境,则打开表和在表间建立关系的速度会比在表单的 Load 事件中使用 USE、SET ORDER
和 SET RELATION 命令快得多。这是因为 Visual FoxPro 使用底层的系统调用来打开表并建立索引和关系。
2.限制表单集中表单的数目
只有在必须让一组表单共享一个私有数据工作期时才使用表单集。当我们运行一个表单集时,即使只显示了表单集的第一个表单,Visual FoxPro
也会创建表单集中所有表单和所有表单中的所有控件,这样很费时间。如果表单不必共享一个私有数据工作期,这样做是不必要的。我们应该建立独立的表单并在需要它们时执行
DO FORM 命令。
当然,如果使用了表单集,在访问表

上一页  [1] [2] [3]  下一页


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:用Borland C++3.1实现外设与Windows应用程序实时通信

  • 下一篇文章:电子政务与办公自动化初探-
  • 返回上一页】【打 印】【关闭窗口
    中查找“如何提高Visual FoxPro的性能”更多相关内容 5VAR论文频道
    中查找“如何提高Visual FoxPro的性能”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››Delphi 5 数据库应用中ODBC数据源的...
  • ››用Visual Basic 6.0实现自动化测试...
  • ››用JAVA制作ICQ
  • ››在IIS 4.0上配置虚拟主机实现虚拟I...
  • ››利用VB开发CAI课件
  • ››基于GP算法的知识发现系统
  • ››基于Client/Server 的课件系统的设...
  • ››WWW对大量数据查询的一种实现
  • ››基于PHP的Web数据库访问
  • ››Developer/2000中的Forms参数及应用...
  • ››如何提高统计在企业中的地位 王友明...
  • ››如何提高少儿舞蹈教育质量 王美萍
  • ››如何提高阅读效率
  • ››如何提高语文课的提问效果
  • ››如何提高农村学生的作文水平
  • ››如何提高“裁员免疫力”
  • ››如何提高资源配置效率以缩小此类工...
  • ››如何提高销售效率
  • ››如何提高Visual FoxPro的性能
  • ››如何提高中学生英语听力水平
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .