VF辅导:VFP测试函数

来源:计算机等级考试    发布时间:2012-08-28    计算机等级考试视频    评论

  在数据库操作过程中,用户需要了解数据对象的类型、状态等属性,Visual FoxPro提供了相关的测试函数,使用户能够准确地获取操作对象的相关属性。

  1.数据类型测试函数
  格式:VARTYPE((表达式),[(逻辑表达式)])

  功能:测试表达式的数据类型,返回用字母代表的数据类型。函数值为字符型。未定义或错误的表达式返回字母U。若表达式是一个数组,则根据第一个数组元素的类型返回字符串。

  若表达式的运算结果是NULL值,则根据函数中逻辑表达式的值决定是否返回表达式的类型。具体规则是:如果逻辑表达式为.T.,则返回表达式的原数据类型。如果逻辑表达式为.F.或省略,则返回X,表明表达式的运算结果是NUll值。

  举例:
  a=DATE()
  a=NUll
  ?VARTYPE($385),VARTYPE([FoxPro]),VARTYPE(a,T.),VARTYPE(a)
  输出为:Y C D X。

  2.表头测试函数
  格式:BOF([(工作区号)])l<别名)])

  功能:测试指定或当前工作区的记录指针是否超过了第一个逻辑记录,即是否指向表头,若是,函数值为.T.,否则为.F.。(工作区号)用于指定工作区,(别名)为工作区的别名或在该工作区上打开的表的别名。当<工作区号>和<别名>都缺省不写时,默认为当前工作区。

  3.表尾测试函数
  格式:EOF([(工作区号)[(别名>])

  功能:测试指定或当前工作区中记录指针是否超过了最后一个逻辑记录,即是否指向表的末尾,若是,函数值为.T.,否则为.F.。自变量含义同BOF函数,缺省时默认为当前工作区。

  4.记录号测试函数
  格式:REcNO([<工作区号>}(别名>])

  功能:返回指定或当前工作区中当前记录的记录号,函数值为数值型。省略参数时,默认为当前工作区。如果记录指针在最后一个记录之后,即EOF()为.T.,RECNO()返回比记录总数大l的值。如果记录指针在第一个记录之前或者无记录,即BOF()为.T.,REcONO()返回1。

  5.记录个数测试函数
  格式:RECCOUNT([(工作区号|别名>])

  功能:返回当前或指定表中记录的个数。如果在指定的工作区中没有表被打开,则函数值为O。如果省略参数,则默认为当前工作区。RECCOUNT()返回的值不受SET r)EI。ETED和SET FIITER的影响,总是返回包括加有删除标记在内的全部记录数。

  6.查找是否成功测试函数
  格式:FOUND([<工作区号『别名>])

  功能:在当前或指定表中,检测是否找到所需的数据。如果省略参数,则默认为当前工作区。数据搜索由FIND、SEEK、LOCATE或CONTINUE命令实现。如果这些命令搜索到所需的数据记录,函数值为.T.,否则函数值为.F.。如果指定的工作区中没有表被打开,则FOUND()返回.F.。如果用非搜索命令如GO移动记录指针,则函数值为.F 

  7.文件是否存在测试函数
  格式:FILE((文件名>)

  功能:检测指定的文件是否存在。如果文件存在,则函数值为.T,否则函数值为.F文件名必须是全称,包括盘符、路径和扩展名,且(文件名)是字符型表达式。

  8.判断值介于两个值之间的函数
  格式:BETwEEN(<被测试表达式>,<下限表达式),(上限表达式))

  功能:判断表达式的值是否介于相同数据类型的两个表达式值之间。BETwEEN()首先计算表达式的值。如果一个字符、数值、日期、表达式的值介于两个相同类型表达式的值之间,即被测表达式的值大于或等于下限表达式的值,小于或者等于上限表达式的值,BETW:EEN()将返回.T.值,否则返回.F

  举例:
  gz一375
  7 BETWEEN(gz,260,650)
  输出为.T

  9.条件函数IIF
  格式:IIF((逻辑型表达式),(表达式1),(表达式2>)

  功能:若逻辑型表达式的值为.T.,函数值为(表达式1>的值,否则为<表达式2>的值。

  举例:
  xb="女"
  ?IIF(xB=[男],1,IIF(Xb一[女],2,3))
  输出为2。

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答