Foxtable(狐表)用户栏目专家坐堂 → 自增长字段在保存时会变化?


  共有15834人关注过本帖树形打印复制链接

主题:自增长字段在保存时会变化?

帅哥哟,离线,有人找我吗?
cpayinyuan
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
自增长字段在保存时会变化?  发帖心情 Post By:2009/8/17 8:59:00 [只看该作者]

    我用的是狐表+SQL server,使用过程中发现一个小问题,就是增加载的空表,这时候用狐表的菜单增加多行,这时候狐表的表中自增长字段会自动编号,但在保存时,自增长字段的数值会发生变化,即表中保存的值与增加行时在表中看到的值不一样.这样一来,会造成很多麻烦,望改正一下!使表中显示的值与数据库表中的值一致.
    经进一步测试,出现错误的主要是两种情况:
(1)自增长字段,在狐表中用菜单增加多行时,首行是从0开始编号的,但SQl  server的首行是从1开始编号的,所以保存时会变化;
(2)自增长字段,在狐表中用菜单增加多行时,如果在保存前删除了刚增加的行的其中一行(例如第1行),或者其中的若干行,保存时编号会出现混乱.

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/8/17 9:23:00 [只看该作者]

新增行生成的编号是临时的,保存时生成真正的编号,这个真正的编号并非Foxtable生成,而是SQL SERVER生成的,Foxtable只是从后台提取这个编号而已。

 回到顶部
帅哥哟,离线,有人找我吗?
cpayinyuan
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:六尾狐 帖子:1412 积分:8937 威望:0 精华:0 注册:2008/9/1 8:57:00
  发帖心情 Post By:2009/8/17 9:48:00 [只看该作者]

以下是引用狐狸爸爸在2009-8-17 9:23:00的发言:
新增行生成的编号是临时的,保存时生成真正的编号,这个真正的编号并非Foxtable生成,而是SQL SERVER生成的,Foxtable只是从后台提取这个编号而已。

     这个我理解,但是增加行后的行号有可能会被代码引用,这会造成错误,如果有关联,可能会更麻烦,如何解决这个矛盾呢?
     只不是添加行之后马上保存一下,就可以解决这个问题?

   补充:好像马上保存一下也不是很方便,设计代码的时候,一般的习惯是添加新行,在新行内添加数据,再保存.能否改一下程序,若有自增长字段,添加行号,自动保存一下自增长字段,同时把数据库中的字段值返回来,显示到表上,这样可以彻底避免错误.

[此贴子已经被作者于2009-8-17 9:49:59编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47477 积分:251256 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/8/17 10:00:00 [只看该作者]

设置关联的时候,可以选择选项:同步修改关联列内容,你可解决你说的矛盾。

你的建议不可行,因为编号是一个资源,不可轻易浪费,保存的时候再生成是最合适的,如果新增行的编号等于实际的编号,只有在增加行后保存表。


 回到顶部