gpt4 book ai didi

ms-access - 带有子查询和参数的 INSERT INTO 在 MS-Access 中不起作用

转载 作者:行者123 更新时间:2023-12-02 23:04:25 25 4
gpt4 key购买 nike

我有一个 INSERT INTO ,它可以将参数作为常量正常工作:

INSERT INTO FinalValidityCodes
(tblReceivedSamplersID, Substudy, Location, FinalValidityCode, DateTimeProcessed)
SELECT ID, true, 'I', 0, now()
FROM tblReceivedSamplers
WHERE (SampleID = ?)

这将影响 1 行(如预期)

但是,如果我将查询更改为使用参数,它将允许它运行,但永远不会影响任何行。

INSERT INTO FinalValidityCodes
(tblReceivedSamplersID, Substudy, Location, FinalValidityCode, DateTimeProcessed)
SELECT ID, ?, ?, ?, ?
FROM tblReceivedSamplers
WHERE (SampleID = ?)

有什么区别?为什么当我使用参数时,插入似乎会失败?

编辑:

SampleID 是文本数据类型。

最佳答案

看起来该 INSERT 的目的是向 FinalValidityCodes 添加一行,其中包含 5 个字段的值。但是,其中 4 个值将由查询参数直接提供,并且 ID/tblReceivedSamplersID 将从另一个参数派生。

因此,我将尝试使用 DLookup() 表达式来获取 ID(使用 SampleID 的参数),并将该值与其他 4 个参数值一起插入。这是未经测试的猜测。

INSERT INTO FinalValidityCodes (
tblReceivedSamplersID,
Substudy,
Location,
FinalValidityCode,
DateTimeProcessed
)
VALUES (
DLookup("ID", "tblReceivedSamplers", "SampleID ='" & param1 & "'"),
param2,
param3,
param4,
param5
);

关于ms-access - 带有子查询和参数的 INSERT INTO 在 MS-Access 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9198846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com