我正在尝试实现一个简单的注册结构,我真的是新的 VBA
以及 Access
. 按指示 INSERT TO
它应该向用户表添加一条记录。但它添加了两个相同的记录,它们只有一个不同的userid,由自动计数生成。然后我想复制全局变量valid中最后生成的userid,这样我就可以在另一个表中插入这个userid。我做错什么了?
DoCmd.RunSQL ("INSERT INTO User ([Type], [FiscalCode], [Name], [Surname], [Birthdate], [Gender], [phoneNumber], [email], [country], [city], [postalCode], [street], [houseNumber])VALUES ('" & valtype & "', '" & valfis & "', '" & valname & "', '" & valsur & "', '" & valdata & "', '" & valgen & "', '" & valphone & "', '" & valemail & "','" & valcountry & "', '" & valcity & "', '" & valcode & "', '" & valstreet & "', " & valnum & ")")
valID = DLookup("[UserID]", "User", "[FiscalCode] = '" & valfis & "'")
在这段代码之后,我想在一个不同的表中执行另一条insert类型的指令,将我刚刚获得的userid作为主键插入这个新表中。这是代码内部唯一的其他插入。
1条答案
按热度按时间ux6nzvsh1#
为了实现这一点,最有可能的是表单绑定到表,控件绑定到字段,所以用户将数据输入到控件中,然后代码运行insert,从而创建相同数据的两条记录。
当发生以下情况之一时,记录将提交到表:
1) 表、查询或绑定窗体已关闭
2) 移动到另一个记录
3) 运行代码保存
删除代码。
使用窗体/子窗体排列输入父记录以及“另一”表中的从属记录。