当前位置:首页 > 技术支持

Access数据库的sql语句select top无效 失效问题解决办法

发布时间:2012-6-28  作者:郑州网络公司施展网络   打印  关闭

    很早以前做asp+access的网站,就发现sql语句select top无效,不管top几条都是全部出来,同样的语句在sql2000中正常,邪门了,当时查查关于ACCESS中TOP 功能的一个问题,一直没有解决,就偷懒用限定程序循环次数解决了。

  最近重写深度学习(asp),又仔细查了一下资料。原来是access中对select top的语句支持有限,如果想在使用,要在查询TOP语句的后面使用Order by,而且Order by排序字段必须是无重复值,如果有重复值的话,那么这个TOP很可能会失效,会返回所有记录。
比如:

  Select top 5 from 表 order by 性别,如果“性别”字段中有重复值,那么access数据库查询时很有可能会显示出所有的记录来,此时top功能会失效的,但如果“性别”中无重复值,那么top功能还是有效的。因此,在ACCESS中使用top功能要注意一下order by的字段是否会有重复值,为了保险起见,可以采用加入主键”的方式:Select top 5 from 表 order by 性别,id

  用主键作“不可能重复”的保障就可以防止此问题出现了!!


本文由郑州网站建设公司施展网络原创发布,转载请注明出处。