Foxtable(狐表)用户栏目专家坐堂 → [求助]手机显示ID和实际_Identify不符的问题?


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

主题:[求助]手机显示ID和实际_Identify不符的问题?

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


加好友 发短信
等级:八尾狐 帖子:1964 积分:15610 威望:0 精华:0 注册:2011/7/16 20:59:00
[求助]手机显示ID和实际_Identify不符的问题?  发帖心情 Post By:2020/3/18 7:55:00 [只看该作者]

手机一个项目。按照教材引用了一段程序。指定的主键 .Primarykey = "ID"  ,ID是由"_Identify"转换而来。ID在手机上已经显示出来了,见下图。

可是发现ID和真实的"_Identify“不一样。表中的ID是事后用由下段程序产生的;手机屏幕上的ID 是由_Identify As ID来的。

因为使用的是SQL语言,所以表里的ID没有实时产生。怎么解决呢?谢谢!也尝试直接用_Identify为主键,依然如此。

For Each a As Row In Tables(bm).Rows
a("ID")=a("_Identify")
Next

 


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200318074252.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200318074446.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/3/18 7:56:28编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111411 积分:567125 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/18 8:58:00 [只看该作者]

数据库里id为4036的是什么数据?这种要提供数据和项目测试才知道是什么原因了

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


加好友 发短信
等级:八尾狐 帖子:1964 积分:15610 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2020/3/18 9:30:00 [只看该作者]

ID=4036就是这段程序里面自动产生出来的。这段程序产生的ID和真正的_Identify不一样!


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200318074446.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:八尾狐 帖子:1964 积分:15610 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2020/3/18 9:39:00 [只看该作者]

这个表的ID是因为发现用程序引入的_Identify和实际查看到_Identify不一样,才后续加的。主要是查一下_Identify的值!

数据库里的ID是用程序

For Each a As Row In Tables(bm).Rows
a("ID")=a("_Identify")
Next

写出来的;手机显示是用 _Identify As ID出来的。理论上应该完全一致。但实际上不一样!

用SQL Into 插入记录之后 _Identify会自动产生么?


 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111411 积分:567125 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/18 9:47:00 [只看该作者]

 _Identify保存后才是真正的值,没有保存前都是临时值,下面这种代码应该在保存后再使用

Tables(bm).save
For Each a As Row In Tables(bm).Rows
a("ID")=a("_Identify")
Next

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  6楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15610 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2020/3/18 9:57:00 [只看该作者]

是的ID列就是保存后再重新设置ID的值。

换个思路。这是服务器后台程序。多用户在使用,所以尽量都在用SQL语句。

这个表里有独立的ID列,如何使用SQL修改语句使ID和_Identify一样?

 

现在的问题是 用SQL _Identify As ID 出的值和把_Identify 赋值给ID列,这两种方法得到的值是不一样的;所以再用ID查_Identify 就查不到了!


 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111411 积分:567125 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/18 10:08:00 [只看该作者]

_Identify As ID 得到的肯定是真正的_Identify 值,不可能有错。如果表格已经有一个ID列,建议改一下不要使用同名,如:_Identify As ID2 。

我觉得问题应该不在这里,可能是代码逻辑的问题。另外确定数据库里_Identify是自增的列?

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  8楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15610 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2020/3/18 10:25:00 [只看该作者]

也想到了可能ID重名问题。我刚刚把_Identify As ID1 了。这个不是真正的_Identify ,随后我在数据库加载后,用程序
For Each a As Row In Tables(bm).Rows
a("ID")=a("_Identify")
Next
 
得到的ID和ID1是不一样的;
 
逻辑是这样 有一个表A;先将指定范围的数据删除了;然后使用SQL INto加入数据(确切这种加入_Identify会形成么?);然后按照教课书上的例子 读取指定页码记录序号 其中将_Identify As ID1列,然后加入到了手机表格中;
 
接下的工作就是另一个程序用_Identify=ID1读这表A的数据,但是读不到;接着在数据库加载表A后,用程序
For Each a As Row In Tables(bm).Rows
a("ID")=a("_Identify")
Next 就会看到ID的值和手机显示的ID1是不一样的;
 
也直接使用_Identify不用ID1,主键用的是_Identify,仍然是这样,读不出来!
[此贴子已经被作者于2020/3/18 10:27:26编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111411 积分:567125 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/3/18 10:36:00 [只看该作者]

不可能,_Identify As ID1 了。绝对是真正的_Identify!!!是不是接到其他数据库了

 回到顶部
帅哥哟,离线,有人找我吗?
新福星
  10楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1964 积分:15610 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2020/3/18 11:08:00 [只看该作者]

怎数据库没有接错。就是用的1楼的那段程序;不用ID1 直接用_Identify 作为主键,转到下个模块是正确的。

但是用这个得到的数找_Identify,就找不到了!接着用把_Identify赋值ID列,看到的就是不同的值!

刚才我用下面的程序强制把ID赋值了

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20200318110630.png
图片点击可在新窗口打开查看

还是不行!

真的好奇怪!


 回到顶部
总数 14 1 2 下一页