A表与B表相关联,为了多用户同时操作,我的方法是:
用A表的ID列------SQL数据库中的自增列 INT 整数型
与B表的RID-------int 整理型 相关联
请问这样合理吗?为什么总出错!
我现在发现问题了,因为我用的方式是SQL数据库动态加载,我在A表中新增加记录时,还没有加载A表数据,所以新增记录的ID为0, 有什么办法解决,谢谢!
[此贴子已经被作者于2009-6-24 10:24:39编辑过]
我在A表中新增加记录时,还没有加载A表数据,所以新增记录的ID为0
这是什么意思? 自动增量应该不存在这个问题啊,即使新增为0,保存的时候,也能生成正确的ID
以下是引用狐狸爸爸在2009-6-24 10:33:00的发言:
我在A表中新增加记录时,还没有加载A表数据,所以新增记录的ID为0
这是什么意思? 自动增量应该不存在这个问题啊,即使新增为0,保存的时候,也能生成正确的ID
对啊!
举例说明一下:
我[出库主表] 以“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?
你不用担心的,虽然新增的是0,但是你保存一下,就不是0了,自动在原来的最大值加1,就象你希望的那样。
不行啊,我用此ID列与B表的RID相关联, 在B表中增加关联记录的时间, RID就是"0",所以保存时就会出错啊.