我想请教除了用计录循环可以实现使记录指针移到第几个记录外,还有什么构件中有能使记录指针直接跳转到第几个记录的功能?因为导航构件中只是移到第一条、到最后一条,下一条,上一条的方法,可没有看到有能直接跳转到第几条记录的方法?请能指点,谢谢!
我用的是个人数据库版
谢谢引力波。这样的情况,有一个题库,程序中有一个选项即随机出题,同时还有其它的一些过滤条件将会使经过滤后的题 目的记录的序号字段不一定是连续的,在这样的情况下,为了完成随机出题的功能,我的思路是先在经过滤后的总记录数的数字范围内随机取数,然后再想利用记录跳转的方法来解决。因此用定位查询的方法的话,查询的字段设置为序号列,随机取出的数在过滤后的记录中不一定有此序号。不知还有什么方法没有。请指教。
以下是引用wgb888在2003-12-15 14:26:14的发言:
谢谢引力波。这样的情况,有一个题库,程序中有一个选项即随机出题,同时还有其它的一些过滤条件将会使经过滤后的题 目的记录的序号字段不一定是连续的,在这样的情况下,为了完成随机出题的功能......
过滤后,按照序号重新排序不就解决了吗?
以下是引用wgb888在2003-12-15 14:26:14的发言:
我的思路是先在经过滤后的总记录数的数字范围内随机取数,然后再想利用记录跳转的方法来解决。因此用定位查询的方法的话,查询的字段设置为序号列,随机取出的数在过滤后的记录中不一定有此序号。不知还有什么方法没有。请指教。
首先你的题库应一个固定表中,进行随机出题时,把该表数据复制到一个临时表中,以后的操作都是在临时表中进行。
在进行过滤后,把数据集的“记录总数”赋给随机数的“范围”;然后,每得到一道题,随机数的范围“减1”,把该记录删除。随机数不就永远出不了范围了。
你的这个问题我有特殊的办法可以轻松解决,需要你把项目发给我帮你做.
管理员说的以上两种方法,第一种不好,假如按第一种的来做的话,那么只要过滤的条件相同时,重新“再”次出题时,其顺序都是相同的。第二种方法所讲的好像是重点在怎么样使随机数不出范围的办法,随机数不出某一范围这个不是问题。其实按现在人个版的构件的功能中,可能用计数循环构件来处理比较好,思路是在此表中新增一字段假设为“随机数”,在此表过滤后用计数循环构件使每一条被过滤出来的(不是被过滤掉的)记录的随机数字段赋一随机数,然后再根据此字段进行排序,这样每当按一下“下一题”(有下一题按钮)就出现一个题目,此题应该是随机的吧!不过我想,如果题库中的题目有上万个的话,在用计数循环给随机数字段赋随机数时,运行是不是会要好一会的时间?如何是很快的,那就用这个方法,我就怕运行的时间会很长。如果有记录跳转的功能的话,我想应该是很迅速的,只要把随机数当作要跳转的记录数就可以了。