添加名为当前日期的列

Posted

技术标签:

【中文标题】添加名为当前日期的列【英文标题】:Add column named current date 【发布时间】:2020-06-16 15:44:58 【问题描述】:

我正在创建一个 Access 数据库来尝试跟踪库存的平均成本。我想使它在单击表单上的按钮时,将一列添加到以当前日期和单词 Quantity 命名的表中,并添加带有当前日期和单词 Price 的另一列。我不能只添加名为数量和价格的列,因为我希望能够随着时间的推移使用它。所以我想知道在 mm/dd/yyyy 上我们以每件 y 美元购买了 x 个小部件。然后一周后,我希望能够点击同一个按钮并添加更多带有新当前日期的行。这甚至可能吗?我正在使用 Microsoft Access 2016。根据我的研究,我尝试了以下一些变体,但似乎没有任何效果。 AvgCost 是表名。我对此也很陌生。

Private Sub Record_Button_Click()
ALTER TABLE AvgCost ADD COLUMN Quantity_DATE()
End Sub

我不断收到一条错误消息,内容为“编译错误:预期:语句结束,它突出显示 AvgCost

【问题讨论】:

添加新项目时,不要通过添加列来更改表格设计,而应该添加包含数据的新行。这通常使用绑定到表的表单来实现,但也可以通过使用查询或 VBA 来实现。 我了解您想要实现的目标。可能您在第一列中有产品。但是,尝试使用 Excel 之类的 Access 来添加新列是行不通的。您将需要包含 ID、产品参考、日期、数量、价格列的 AvgCost 表。然后,您需要一个带有 ID、产品名称等的表 Product,您可以在其中引用您的 AvgCost 记录。无意冒犯,但我建议阅读有关关系数据库设计的教程。尽管 Access 看起来很容易配置,但它仍然是一个 SQL 数据库而不是电子表格。 【参考方案1】:

不能像这样在 VBA 中运行 SQL 操作。当然不会在字段名称中创建带有日期的字段。需要调用命令并连接日期值。

CurrentDb.Execute "ALTER TABLE AvgCost ADD COLUMN Quantity_" & Format(DATE(), "yyyymmdd") & " Number"

但是,这确实是糟糕的设计。应该添加记录,而不是执行常规更改数据库结构的过程。

【讨论】:

嗨!成功了,非常感谢!我会尝试想出一个更好的方法来设计数据库。就像我说的那样,我是这方面的新手,并且有点摸不着头脑,所以这是我想出的最好的方法,但我会继续集思广益。再次感谢您的帮助和建议!

以上是关于添加名为当前日期的列的主要内容,如果未能解决你的问题,请参考以下文章

使用 PHP 使用两个日期字段和当前月份选择表条目

Telerik radtreeview 显示连接表中的数据给出错误这些列当前没有唯一值

Oracle获取当前日期前一个月的全部日期

运行查询时如何在python中创建具有当前日期和时间的文件名

如何获得当前日期前 30 天?

保存前检查 Microsoft Access 表单值