在一张数据表里面比如字段顺序是 'FieldA,FieldB,FieldC.....'
其中FieldA是主键。它在表中是第一个 字段。
现在的问题是 通过修改系统表
把它的顺序改成 'FieldC,FieldB,FieldA.....'后,
它的主键却变成了 FieldC ,这很显然是错误的。
我不知道为什么会变成这样?不知道该怎么避免这样的错误。而且如果在该表上建立了 全文索引 之后,即便是在企业管理器中
修改主键字段在字段列表中的位置,保存时系统也会给出错误提示,
这又是怎么回事?

解决方案 »

  1.   

    to:dawugui(潇洒老乌龟) 
    ......
    我总不能叫用户去表设计器里面拖动字段吧?
    是在其他小软件里面调用存储过程来修改字段物理顺序。在syscolumns 表中的 colid 字段的值。
    在改完 之后 可以保证 colid 是从1开始而且连续有值。
      

  2.   

    系統表 syscolumns.colorder記錄的是字段的順序
      

  3.   

    该 colorder 好像没有什么用啊
    我刚刚建了个表试过,用存储过程修改字段的 colorder 后,
    select * from table ... 之后 字段的顺序还是没有什么变化。
    (事实是 colorder 确实是改变了)