Access中如何用代码建立小数decimal(18,2)类型的字段

在Access中用代码建立表和字段,通常用DAO的方式。
如:
    Dim dbs As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As DAO.Field
    Set dbs = CurrentDb
    Set tdf = dbs.CreateTableDef("表1")
    Set fld = tdf.CreateField("字段1", dbText)
    tdf.Fields.Append fld
    dbs.TableDefs.Append tdf
或:
    CurrentDb.Execute "Create TABLE 表1(字段1 TEXT);"

但如果要建立"小数"类型(dbDecimal 、DECIMAL)的字段,这两种方法就会出错,提示字段定义语法错误。

有三种解决方法:

第一种,用ADO方式运行 Create TABLE 语句:
CurrentProject.Connection.Execute  "Create TABLE 表1(字段1 DECIMAL);"
注意这里用CurrentProject.Connection取代了CurrentDb,因为CurrentProject.Connection返回的是ADO的Connection对象

第二种,在菜单上 点击 "工具"—>"选项", 选择"表/查询"选项卡,在"SQL Server兼容语法(ANSI 92)"项中勾选"当前数据库"。这个选项会改变数据库中SQL语句的解释方式,如通配符会改变,有可能原有的查询不能返回正常结果。
然后用RunSQL方法运行 Create TABLE 语句:
DoCmd.RunSQL "Create TABLE 表1(字段1 DECIMAL);"

第三种,用ADOX对象,具体代码略。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值