CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他数据库开发 >  Access

怎样使插入的数据严格按照插入顺序排序?

楼主vivxjtu(viv)2003-12-04 10:55:43 在 其他数据库开发 / Access 提问

现在做的一个程序是接收串口的数据,每收到一组数据insert一组,每组都有id号,递增。但是保存后的表在access中打开后看到的顺序并非完全是按照1,2,3,4……这样的顺序显示的。现在用户要求一定要按此顺序显示,因为用户调用这个数据库中数据时直接按照显示的顺序,不按我程序中的id号,我也没法在用户调用的程序中去加个order   by.但是不知道access中没有按插入顺序显示到底是程序的问题还是access本来就不保证显示的数据按插入数据的顺序。怎样可以做到在access中打开表后看到的元组顺序是和插入的顺序严格对应的呢?谢谢 问题点数:0、回复次数:8Top

1 楼Kyrin(天梦流云)回复于 2003-12-04 12:50:47 得分 0

你可以增加一个自动编号字段呀,这样,每插入一个记录都有一个递增的数值,不就能保证按插入顺序排序了?Top

2 楼rongwenfeng(驿)回复于 2003-12-04 13:52:44 得分 0

对啊,自动编号可以啊,检索的时候也什么也不写就可以了Top

3 楼vivxjtu(viv)回复于 2003-12-04 14:24:38 得分 0

没用的,加自动编号打开表的时候里面的内容一样会有不按顺序排列的情况,和我自己加的序号一样。元组内容没有错,但是打开后显示的位置有变化。现在只是要求显示的位置就按照序号的顺序下来。Top

4 楼vivxjtu(viv)回复于 2003-12-04 14:30:31 得分 0

我现在是无法做排序的,其实我觉得我只管保证把数据正确存进数据库,应该是用户调用数据的时候自己order   by一下,需要什么就怎么取就是了。我觉得数据在数据库里放在什么地方都是没有关系的。但问题是现在用户就是要求打开access看到数据按序号升序排列,就是这个要求。但是我也不知道为什么,是按序一组组插入的,但是打开时不一定是按这个顺序排列的。但是我又不能要求用户自己去order   by一下。Top

5 楼changechange(http://access911.net 是我的个人网站,欢迎光临)回复于 2003-12-04 22:33:06 得分 0

规定字段加索引即可  
   
  http://access911.net/index.asp?board=4&recordid=73FABE1E13DCTop

6 楼vivxjtu(viv)回复于 2003-12-12 16:10:28 得分 0

changechange(改了又改)提供的连接打不开,可以帮忙贴一下吗?Top

7 楼changechange(http://access911.net 是我的个人网站,欢迎光临)回复于 2003-12-13 15:31:43 得分 0

你现在的位置:文章索引   ->   文章分类   ->   表      
   
     
   
  如何在任意位置插入记录?  
   
  作者:ec     更新日期:2003-4-5     浏览人次:94  
   
     
     
       
  专题地址:http://access911.net/index.asp?board=4&recordid=73FABE1E13DC  
       
     
  如何在任意位置插入记录?  
  我们平时使用   ado的   recordset.addnew或者用   sql语句   insert   into...来添加数据的时候,记录总是被添加在表的最后一行,如何才能把记录插入到其中某条记录的前面那?  
   
            我们先要来看一下显示记录的时候是如何操作的。一般,我们都使用自动编号字段来表示某条记录的唯一性(一般名字叫   id),而   select   *   from   table   order   [id]   就是按添加的顺序来显示记录。  
          好了,知道了记录如何显示,我们就可以自己控制了,我们可以再添加一个字段,字段名字叫   orderid   ,类型为长整型。当要在尾部添加记录的时候,我们用  
   
  INSERT   INTO   table   (orderid)   SELECT   max(orderid)+1   FROM   table  
   
  来做。当要在中间某条记录之前插入记录时,我们要做的就是先取得这条记录的   orderid,然后用  
   
  update   table   set   orderid   =   orderid+1   where   orderid   >=   取得的orderid  
  insert   into   table   (orderid)   values(取得的orderid)  
   
  在显示的时候,如果要按照自己的顺序排列,就可以用   select   *   from   table   order   by   orderid  
   
     
   
  录入:changechange(CSDN)       责任编辑:cg1  
     
  Top

8 楼yifanwu(逸凡)回复于 2003-12-31 16:35:47 得分 0

你的问题应该很好解决  
  加一个自动编号的字段  
  在客户端用order   by就可以了!  
   
  如果你的客户说他要打开表就看到按序排列的,并且执意不order   by    
   
  只要是access数据库,那么你给他建一个view,这样让他打开view就可以了!Top

相关问题

  • 插入数据时的排序问题?
  • 关于sql数据的插入顺序
  • 数据顺序插入问题~!
  • 如何按记录的插入顺序排序?
  • 通过Select插入数据时排序的问题
  • 数据不按顺序插入怎么回事
  • 怎样取消SQL Server2000往表里插入数据时的自动排序?
  • 如何让CTreeView的项进行自动排序?就是每插入一项,按一定的顺序自动实现排序。
  • 记录插入问题: 对数据库的逻辑记录顺序中如何"插入"一条记录?!
  • 直接插入排序

关键词

  • .net
  • 数据
  • 字段
  • 排列
  • 数据库
  • 用户
  • access
  • 插入
  • 顺序
  • 记录

得分解答快速导航

  • 帖主:vivxjtu

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo