【问题标题】:How to create a decimal field in MsAccess using DAO?如何使用 DAO 在 Ms Access 中创建十进制字段?
【发布时间】:2009-10-27 12:36:34
【问题描述】:

我需要通过 DAO 在 MsAccess 2003 中创建一个十进制字段。 我怎么做?我可以使用以下代码 n-p 创建其他字段,但不能使用十进制。

如何设置类型、精度和比例?

注意:小数数据类型 = 20,但将数据类型设置为 20 会导致 invalid data type

Dim db As DAO.Database
Dim tbl As TableDef
Dim fld As Field

Set db = CurrentDb

tbl = database.CreateTableDef("Test")
fld = tbl.CreateField( ....   )

【问题讨论】:

    标签: ms-access dao


    【解决方案1】:

    您可能会发现这很有用:http://allenbrowne.com/ser-49.html#_ftn7

    它指出 DAO 中不提供十进制,应使用 ADO 来创建此类字段。

    【讨论】:

    • 一个软糖解决方案可能是使用货币数据类型并格式化字段以按照您认为合适的方式显示
    • 欢迎来到 MS 在 Jet 4、ADO 和 DAO 方面的愚蠢世界。绝对没有理由 MS 不应该在 DAO 中实现这一点,但他们选择不这样做,因为他们正在推动现已死去的经典 ADO。您可以检查 ACE 的 DAO 版本是否支持它(即 DAO 的 Access 2007 版本)。
    • @David W. Fenton:“现已死去的经典 ADO”——欢迎来到现实世界。 ADO 经典在 MS Access Land 中并没有死,因为它仍然需要做 DAO 缺乏的事情(无论出于何种原因):检查约束、UNICODE 压缩数据类型、固定长度文本数据类型、无索引外键、.. . 哦,是的,还有 DECIMAL 数据类型 ;) –
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多