我希望你能帮我解决这个小问题。我不太确定如何向你解释这种情况,所以我就试一试。
我正在尝试做的是以下内容:
我想在表 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;
最佳答案
我无法发现有关您的 SQL 语句的任何内容,这会阻止它执行和/或引发错误。 (我认为您的 WHERE 子句是多余的,但这不应该导致数据库引擎拒绝它。)您使用什么方法来“运行”它?
如果您正在使用 Access 查询设计器,并从设计 View 切换到数据表 View ,则您的查询实际上并未执行...数据表 View 将显示执行查询时会受到影响的行。
这种情况与您在查询设计器中构建删除查询的情况相同...数据表 View 将显示哪些行将被删除 如果 查询已执行,但切换到数据表 View 不会删除这些行。
要执行查询,请单击带有红色感叹号的图标。
关于带有 SELECT 和 INNER JOIN 的 SQL INSERT INTO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7040390/