一道简单的VFP题
在VFP中,数据库sdb中数据表s中有40条记录,其中年龄age小于20岁的有15个,20岁的有一个,大于30岁的有10个。执行以下程序,显示的结果是setdeleted...
在VFP中,数据库sdb中数据表s中有40条记录,其中年龄age小于20岁的有15个,20岁的有一个,大于30岁的有10个。执行以下程序,显示的结果是set deleted onopen database sdbdelete from s where age between 20 and 30select s?reccount()A)15 B)16 C)40 D)25这个题目到底是要数删除符合要求的记录的数目,还是删除记录后剩下的记录的数目啊?拜托帮帮忙
展开
3个回答
2013-12-31
展开全部
正确答案是C。s表中共有40条记录,使用delete命令逻辑删除了年龄从20到30之间(含等于)的15条记录(共有40条,年龄小于20的有15条,等于20的有1条,大于30的有10条,即大于20并且小于等于30的有40-15-1-10=14条,所以大于等于20并且小于等于30的记录个数为14+1=15条)。
使用set delete on命令设置后,逻辑删除的记录将不会显示出来,因此,本题如果使用list显示命令或使用browse浏览命令时,将显示25条记录,即逻辑删除的15条记录将不显示。如果使用set delete off命令设置后,逻辑删除的记录将会显示出来,显示时在记录前有删除标记,即将显示40条记录,包括15条被逻辑删除的记录。系统默认状态为set delete off。
使用set delete on命令设置后,逻辑删除的记录将不会显示出来,因此,本题如果使用list显示命令或使用browse浏览命令时,将显示25条记录,即逻辑删除的15条记录将不显示。如果使用set delete off命令设置后,逻辑删除的记录将会显示出来,显示时在记录前有删除标记,即将显示40条记录,包括15条被逻辑删除的记录。系统默认状态为set delete off。
2013-12-31
展开全部
答案为:Creccount()这个函数返回的是表文中物理上存在的记录个数。不管记录是否被逻辑删除以及set deleted的状态如何,也不管记录是否被过滤,该函数都会把它们考虑在内。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-31
展开全部
reccount()不受set delete on的影响,所以结果为C。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询