欢迎来到天天文库
浏览记录
ID:19863923
大小:215.50 KB
页数:17页
时间:2018-10-07
《vfp9ca新方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、vfp9CursorAdapter的新方法新属性vfp9CursorAdapter的新方法—DelayedMemoFetchVisualFoxPro8的CursorAdapter有一个FetchMemo属性。如果设置FetchMemo=.F.,那Memo字段的内容会不读取,但如果需要里面的内容就会变的非常麻烦。VisualFoxPro9开始有了DelayedMemoFetch方法。可以做到,CursorFill()的时候,Memo里面全空,但当光标移动到Memo字段的时候才自动读取当前条记录的Memo字段内容
2、。这个方法能极大的提高读取带有Memo字段表的效率。注意:是当前一条记录的Memo字段内容。操作办法如下:1、FetchMemo=.F.2、FetchMemoDataSourceType=ca.DataSourceType3、FetchMemoDataSource=ca.DataSource4、FetchMemoCmdList这个是最关键的,也是最麻烦的。oCA.FetchMemoCmdList="f13、.RefreshAlias+'.f0')>,"+;"f2"其中:f1,f2这里是Memo字段名简称;f0是关键字段名;this.RefreshAlias可以是this.Alias。翻译一下意思如下:SelectMemo字段名From后台表名Whete关键字段名=?前台的Alias名.关键字段内容。注意:DelayedMemoFetch是个内置保护方法,在程序里是4、不能直接调用。DelayedMemoFetch方法执行一个CursorAdapter对象中目标记录的被延迟的备注字段的获取。CursorAdapter.DelayedMemoFetch(cMemoName)参数cMemoName指定将要获取的与CursorAdapter对象关联的临时表的备注字段的名称。说明应用于:CursorAdapterClass当FetchMemo属性被设定成“假”(.F.)时,能够执行一个被延迟备注字段的获取。延迟备注字段的获取可以防止备注字段的内容在调用CursorFill和Curs5、orRefresh方法时被更新。当应用程序在访问备注字段时,才尝试获取该备注字段的内容。下列的四个CursorAdapter成员使你能够使用延迟备注字段的获取。·DelayedMemoFetch方法·FetchMemoDataSourceType属性·FetchMemoDataSource属性·FetchMemoCmdList属性DelayedMemoFetch方法为当前记录被延迟获取的备注字段执行获取操作,该备注字段在cMemoName属性中指定。该方法将返回指定的备注字段的内容。如果不能获取数据,将引发一6、个错误。注意:为了保证CursorAdapter获取被延迟的备注字段,与CursorAdapter关联的临时表必须以独占方式打开。注意:除了执行延迟备注字段的获取之外,DelayedMemoFetch方法从不被调用。在该方法执行期间不应该改变当前记录。为了允许对目标记录数据的访问,VisualFoxPro打开一个当前记录的只读目标游标(Cursor)。该只读游标以独占方式代开,其别名包含在RefreshAlias属性中。如果RefreshAlias属性为空,DelayedMemoFetch方法不会被Visua7、lFoxPro数据引擎激发。为了能够用DelayedMemoFetch方法获取通用字段(General)的内容,必须用CAST()函数将字段内容转换为二进制格式(Blob)。下面的示例演示了使用DelayedMemoFetch方法通过VisualFoxProOLEDBProvider返回Northwind的Categories表的备注和通用字段内容。CLOSEDATABASESALLCLEARLOCALoCAASCursorAdapterLOCALoConnASADODB.ConnectionLOCALoRS8、ASADODB.RecordsetLOCALcConnStr,lcNorthwindFilelcNorthwindFile=HOME()+"SamplesNorthwindorthwind.dbc"cConnStr=[Provider=VFPOLEDB.1;DataSource=&lcNorthwindFile.;]+;[Password="";CollatingSequence=MACHIN
3、.RefreshAlias+'.f0')>,"+;"f2"其中:f1,f2这里是Memo字段名简称;f0是关键字段名;this.RefreshAlias可以是this.Alias。翻译一下意思如下:SelectMemo字段名From后台表名Whete关键字段名=?前台的Alias名.关键字段内容。注意:DelayedMemoFetch是个内置保护方法,在程序里是
4、不能直接调用。DelayedMemoFetch方法执行一个CursorAdapter对象中目标记录的被延迟的备注字段的获取。CursorAdapter.DelayedMemoFetch(cMemoName)参数cMemoName指定将要获取的与CursorAdapter对象关联的临时表的备注字段的名称。说明应用于:CursorAdapterClass当FetchMemo属性被设定成“假”(.F.)时,能够执行一个被延迟备注字段的获取。延迟备注字段的获取可以防止备注字段的内容在调用CursorFill和Curs
5、orRefresh方法时被更新。当应用程序在访问备注字段时,才尝试获取该备注字段的内容。下列的四个CursorAdapter成员使你能够使用延迟备注字段的获取。·DelayedMemoFetch方法·FetchMemoDataSourceType属性·FetchMemoDataSource属性·FetchMemoCmdList属性DelayedMemoFetch方法为当前记录被延迟获取的备注字段执行获取操作,该备注字段在cMemoName属性中指定。该方法将返回指定的备注字段的内容。如果不能获取数据,将引发一
6、个错误。注意:为了保证CursorAdapter获取被延迟的备注字段,与CursorAdapter关联的临时表必须以独占方式打开。注意:除了执行延迟备注字段的获取之外,DelayedMemoFetch方法从不被调用。在该方法执行期间不应该改变当前记录。为了允许对目标记录数据的访问,VisualFoxPro打开一个当前记录的只读目标游标(Cursor)。该只读游标以独占方式代开,其别名包含在RefreshAlias属性中。如果RefreshAlias属性为空,DelayedMemoFetch方法不会被Visua
7、lFoxPro数据引擎激发。为了能够用DelayedMemoFetch方法获取通用字段(General)的内容,必须用CAST()函数将字段内容转换为二进制格式(Blob)。下面的示例演示了使用DelayedMemoFetch方法通过VisualFoxProOLEDBProvider返回Northwind的Categories表的备注和通用字段内容。CLOSEDATABASESALLCLEARLOCALoCAASCursorAdapterLOCALoConnASADODB.ConnectionLOCALoRS
8、ASADODB.RecordsetLOCALcConnStr,lcNorthwindFilelcNorthwindFile=HOME()+"SamplesNorthwindorthwind.dbc"cConnStr=[Provider=VFPOLEDB.1;DataSource=&lcNorthwindFile.;]+;[Password="";CollatingSequence=MACHIN
此文档下载收益归作者所有