SQL更新查询链接到窗体上的控件

时间:2014-12-28 18:11:36

标签: sql ms-access-2010

在下面的查询中,我想更新表tblDependencies03中名为“ID”的字段,其值来自表tblDependencies01中的字段“ID”。在我的表单上,我有一个名为ID的控件,允许我识别我想要检索的表tblDependencies01中的哪条记录。但是,这个查询有效地创建了一条记录(在ID列中具有正确的ID号),但是对于表tblDependencies01中的每条记录都重复它,而不管ID号是什么。例如,如果我的控件反映了记录ID 96,并且表tblDependencies01中存在三个记录,ID为95,96& 97,我在tblDependencies03表中的最终结果将是3个记录创建,所有记录都是ID为'96'

以下是我的代码:

st_sql = "INSERT INTO tblDependencies03([ID])SELECT '" & ID & "' FROM tblDependencies01 WHERE [tbldependencies01].[ID] = ID "

Application.DoCmd.RunSQL(st_sql)

1 个答案:

答案 0 :(得分:1)

SELECT中的条件错误。 检查查询的SELECT部分​​,您可能会获得多条记录。我也认为你不需要任何SELECT,因为你已经拥有了你想要的价值。您可以使用VALUES:

st_sql = "INSERT INTO tblDependencies03 ([ID]) VALUES ('" & ID & "')"