Foxtable(狐表)用户栏目专家坐堂 → 关联表的关联列


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

主题:关联表的关联列

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


加好友 发短信
等级:小狐 帖子:363 积分:2998 威望:0 精华:0 注册:2008/11/11 13:42:00
关联表的关联列  发帖心情 Post By:2009/6/24 10:20:00 [显示全部帖子]

A表与B表相关联,为了多用户同时操作,我的方法是:

用A表的ID列------SQL数据库中的自增列  INT 整数型
与B表的RID-------int 整理型  相关联

请问这样合理吗?为什么总出错!

我现在发现问题了,因为我用的方式是SQL数据库动态加载,我在A表中新增加记录时,还没有加载A表数据,所以新增记录的ID为0, 有什么办法解决,谢谢!
[此贴子已经被作者于2009-6-24 10:24:39编辑过]

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


加好友 发短信
等级:小狐 帖子:363 积分:2998 威望:0 精华:0 注册:2008/11/11 13:42:00
  发帖心情 Post By:2009/6/24 14:21:00 [显示全部帖子]

举例说明一下:
我[出库主表] 以“ID”为SQL数据表主键字段


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

为了实现动态加载,在项目BeforeLoadOuterTable中代码如下:
If e.DataTableName = "出库主表" AndAlso e.User.Name = "开发者" Then
e.SelectString = "Select * From [出库主表] Where ID='0'"
End If
If e.DataTableName = "出库明细" AndAlso e.User.Name = "开发者" Then
e.SelectString = "Select * From [出库明细] Where ID='0'"
End If

现在问题是如果没有加载数量,直接通过按键的chick代码:
Tables("出库主表").AddNew()
Forms("出库主表加").Open()

新增记录时,ID为0,而不是原来最大值加1,如下图:

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

问题是如何让ID在没有加载全部数据的时候,新增记录时,也能在原来最大值的基本上加1?

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


加好友 发短信
等级:小狐 帖子:363 积分:2998 威望:0 精华:0 注册:2008/11/11 13:42:00
  发帖心情 Post By:2009/6/24 20:57:00 [显示全部帖子]

不行啊,我用此ID列与B表的RID相关联, 在B表中增加关联记录的时间, RID就是"0",所以保存时就会出错啊.

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


加好友 发短信
等级:小狐 帖子:363 积分:2998 威望:0 精华:0 注册:2008/11/11 13:42:00
  发帖心情 Post By:2009/7/11 11:49:00 [显示全部帖子]

好的,谢谢!

 回到顶部