如何根据字段值从另一个数据库预填充表单

时间:2019-02-16 01:10:35

标签: ms-access

我正在尝试创建一种解决方案,以从辅助BigDB中获取新记录的SmallDB数据。

我创建了一个BigDB链接表以将其放置在SmallDB上,因此以后我可以使用Button的OnClick事件,并且可以更轻松地访问该数据。

情况:我在表单中搜索PersonID,但得到否定的结果(该特定的PersonID不存在)。

然后,以我创建新记录的形式,在PersonID字段中输入此新的Person ID。

我的计划是能够单击FetchData按钮并为此特定的PersonID从BigDB预填写姓名,姓氏和其他详细信息。

然后我将使用保存按钮保存记录。

在我看来,该解决方案可能类似于:https://stackoverflow.com/a/53180365

但是我不知道如何确保仅针对我在“表单”字段中输入的特定PersonID才能从BigDB获取数据。

或者在我的情况下,另一种方法会更好?

谢谢!

1 个答案:

答案 0 :(得分:0)

在涉及的链接的示例代码之后,通过参数将过滤条件应用于查询对象。但是,除非您使用PARAMETERS子句设置了查询对象,否则我认为不需要QueryDefs,并且可以在代码中使用SQL语句,而不是引用查询对象。

假定PersonID是文本类型字段:

Dim db as Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT * FROM tablename WHERE PersonID='" & Me.tbxPID & "'")
If Not (rs.EOF And rs.BOF) Then

如果您不在表格的新记录行上,请先手动或使用代码移至该行,或使用其他方法。 INSERT SELECT操作SQL可以使用BigDB中的数据在SmallDB中创建新记录。