【发布时间】:2011-10-25 19:19:57
【问题描述】:
希望你能帮我解决这个小问题。我不太清楚如何向您解释这种情况,所以我会尝试一下。
我想要做的是:
我想在表 RFC_Risks 中插入一些特定的值和参数(我自己输入),所以基本上每次我在表 RCF_Risks 中找到一个特定的原因时,我都想写一个新的行来更新优先级RfC,每次发生这种情况,位置都会增加1。
我现在的问题是,当我运行这个语句时,我只得到了 SELECT 部分:-),没有插入完成,我也没有得到 SQL 语句错误或类似的东西。我只需输入参数,然后我得到一个SELECT 表,仅此而已。
我正在使用 MS Access 2010,希望您能帮我解决我的“小”问题。
INSERT INTO RFC_Risks (RFC_No, RiskPos, Datum, Comments, RiskPrio, Reason)
SELECT RFC_Risks.RFC_No, (RFC_Risks.RiskPos +1) AS RiskPos, [Aktuelles Datum] AS Datum, [Kommentartext] AS Comments, [Neue Prio] AS RiskPrio, RFC_Risks.Reason
FROM RFC_Risks INNER JOIN Risk_Reasons ON RFC_Risks.Reason = Risk_Reasons.Reasontext
WHERE RFC_Risks.Reason = Risk_Reasons.Reasontext;
【问题讨论】:
-
仅供参考,我认为您不需要最后的
WHERE子句,您的INNER JOIN会为您执行此操作 =) -
您遇到什么错误或意外结果?这对我来说看起来不错..
-
@Yuck 听起来他们得到的意外结果是没有记录插入到 RFC_Risks 中(只有
SELECT部分被执行)
标签: sql ms-access select insert inner-join