通过前面的学习我们可以用传统的查询方法来进行简单的查询。例如:显示性别为男的教师信息,假定相应的表已经打开。
(1)用LIST命令的方法,在命令窗口输入如下命令:
这时在应用程序主窗口显示所有男教师的信息。
(2)用顺序查询命令:
显示查询结果用命令DISPLAY 进行显示,继续查询用CONTINUE命令。完整的命令
(3)若表已进行了索引还可以用索引查询命令来快速查询。假定相应的表已经打开,并且表已按性别进行索引,用索引命令SEEK 或FIND 命令查找都可以。SEEK命令如下:
(4)用菜单方式:
打开“教师”数据表浏览窗口,如图4-44所示。
图4-44
单击VFP系统下拉菜单中“表”→选择“转到记录”选项→单击“定位”选项。屏幕弹出对话框窗口,如图4-45所示。
图4-45(www.xing528.com)
规定“作用范围”选择所有 ALL的记录,查询条件 FOR 条件为:性别="男",单击“定位”按钮,如图4-46所示。在“教师”表的浏览窗口中指针将指向第一个满足条件的记录,如图4-44所示。
当进行查询操作时,常常要判断查询成功否,这时就要用到下面几个函数。
(1)查询结果判断函数。
【格式】FOUND( )
【说明】函数值是逻辑常量“真”、“假”值。当查询成功时,即找到了符合条件的记录,FOUND( )函数的结果为.T.;否则FOUND( )函数的结果为.F.。
图4-46
(2)结束位置函数。
【格式】EOF( )
【说明】函数值是逻辑常量。当查找不成功时,即当记录指针指向表记录结束位置时,EOF( )函数值为.T.,否则当查询成功时,即当记录指针指向表内某一条符合条件记录时EOF()函数值为.F.。
(3)当前记录号函数。
【格式】RECNO( )
【说明】给出当前记录的记录号。若在查询命令后使用该函数,找到符合条件的记录,该函数的值就是当前记录号。若找不到符合条件记录,该函数值是数据表中的最大记录号再加1。
它们三个函数之间的关系是:找到了符合条件记录时函数 RECNO( )的值就等于当前记录号,FOUND( )函数就等于.T.,EOF( )函数就等于.F.。没有找到符合条件的记录时函数 RECNO( )就等于数据表中的最大记录号再加1,FOUND( )函数值为.F.,EOF( )函数值就等于.T.。
查询也可以编写程序来完成,用编程序来进行查询我们会在后面章节详细介绍。使用SQL语言也可以进行查询,SQL语言是后面独立一章。这一节讲的查询与前面讲的视图有很多相似之处。实际上,查询设计器和视图设计器的使用方式几乎完全一样,主要有以下的不同点,查询设计器的结果是将“查询”以.QPR扩展名的文件保存在磁盘中;而视图设计完后,在磁盘上找不到类似的文件,视图的结果保存在数据库中;由于视图可以用于更新源表,所以它有更新属性需要设置。因此,在视图设计器中多了一个“更新条件”选项卡;而“查询”则可以有多种输出方式。在查询设计器中可以选择 VFP系统菜单中“查询”→“查询去向”来指定输出去向,或者单击查询设计器中的工具栏中的“查询去向”按钮指定输出去向。如果有必要还可以把查询结果保存到表中。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。