【问题标题】:Append query result Access 2010追加查询结果 Access 2010
【发布时间】:2016-01-29 12:39:27
【问题描述】:

很抱歉,如果有一个简单的解决方案。我的访问技能严重缺乏......但我正在努力学习。我在 excel 中完成了这个解决方案,但我一直在寻找更强大、更长期的解决方案,并认为 Access 可以提供帮助。

我有一个 Microsoft 2010 Access 数据库来存储制皂原料。我使用这个数据库的目标是让我的妻子输入她的肥皂成分、新肥皂的配方,它会告诉她每批肥皂的成本,然后再告诉她每块肥皂的成本。我有一张表(成分),她可以在其中输入她购买的所有成分、这些物品的尺寸(磅、盎司)以及它们的成本。我想自动将这些磅和盎司计算为盎司,以便更容易计算成本。我想出了几个解决方案来给我答案,但是我一直无法找到存储这些结果的方法。

首先,我创建了一个After Update 事件,当她移出盎司框后,该事件将在文本字段中输入总盎司。这样做的问题是 TOTAL OUNCES 不会存储在任何位置,并且所有表记录都显示最后更新的值。

我尝试创建一个运行良好的查询,但同样,我无法将这些结果附加到成分表中。我的查询的最新迭代看起来像这样。我想要存储此信息的成分表 (OuncesConverted) 中有一个字段。

INSERT INTO Ingredient ( OuncesConverted )
 SELECT 16*[Pounds]+[Ounces] AS OuncesConv
 FROM Ingredient;

当我运行此查询时,我收到以下错误。

Microsoft Access 无法在追加查询中追加所有记录。由于类型转换失败,Microsoft Access 将 0 个字段设置为 Null,并且由于键违规,它没有将 0 条记录添加到表中,由于锁违规,0 条记录,以及由于验证规则违规而 9 条记录。 是否仍要运行操作查询? 要忽略错误并运行查询,请单击是。 有关违规原因的说明,请单击帮助。

当我单击“是”时,没有任何反应。

非常感谢任何帮助。我可能想多了,当我不知道一个程序时我会做什么。

【问题讨论】:

    标签: ms-access ms-access-2010


    【解决方案1】:

    您不应该插入,也不应该更新,只需选择:

    SELECT 
        *, (16 * [Pounds] + [Ounces]) As OuncesConverted
    FROM
        Ingredient
    

    这将替换您可以从表中删除的字段OuncesConverted。然后将此查询用作表单的源。

    【讨论】:

    • 所以我最初是这样做的并且它有效,但我如何将它变成匹配正确成分的形式?
    • 将文本框绑定到字段OuncesConverted
    • Gustav,感谢您的帮助,但我已经尝试过这样做,但它一直给我#NAME? 错误。我不得不假设这是因为它不知道将查询绑定到什么成分。正确的?如何将查询 OuncesConverted 与其转换为的成分联系起来?抱歉……我还是新手。
    • 将上面的查询另存为,例如,IngredientConverted。然后将表 Ingredient 替换为表单的来源。
    • 认真的吗?有那么容易吗?我知道我已经把这整个混乱复杂化了。那行得通。非常感谢!现在开始我的下一次冒险!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    • 2012-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多