【发布时间】:2013-03-07 19:19:04
【问题描述】:
我有一个来自 JDE/AS400 的 ODBC 链接表,我将其引入 MS Access 2010。该表有四个数据类型为十进制的字段,一旦我将它们写入临时表。有没有办法在一个查询中包含四个更改表/列语句?
如果有人想知道,存储在这些字段中的数据是价格和成本,但它们以 15 的十进制值和 0 个尾随小数的形式存储在 ODBC 表中,我必须将 2 除以 10,000 和 1 除以 100,000获取正确位置的小数点来表示真实的价格/成本例如,价格字段中的 3558767 实际上是 355.8767 或 355.88 四舍五入的价格)。当我将相同的数据带入 Access 并除以 10000 时,我得到 355.00。我需要正确的美分值。过去我能够做到这一点的唯一方法是编写一个更改表/更改列查询以在执行除法之前将数据类型更改为双精度。
由于我有四个这样的字段,我想同时更改或修改所有四个。有什么想法吗?
感谢任何帮助。
【问题讨论】:
-
您的问题非常令人困惑。 Access中有哪些数据类型?你到底想做什么?此外,如果您要存储价格,您可能不想使用
Double,因为它是一个浮点数。 -
对不起,鲍比,我知道这很混乱。似乎总是可以使用 JD Edwards 文件。 Access 中的数据类型与存储在链接表中的数据类型完全相同,这是一种十进制数据类型,长度为 15 个数字。您对此建议使用什么数据类型?我已经尝试过货币,但是由于我首先必须将这些金额分开,因为 AS400/JDE 链接表将它们存储为小数,而其中不包含小数点,所以我不能简单地将它们转换为货币,而无需先将它们分开得到它所属的小数点。
-
我继续写了四个更改表查询,但是如果有人能告诉我在 VBA 之外编写一个简单查询的方法,该查询将在一个单一的表中更改多个列在 MS Access 中查询,我将不胜感激。谢谢。蒂姆
标签: ms-access alter-table