access数据库中的数据精度和显示格式

ACCESS中的小数的表现形式有三种数据类型:单精度、双精度、小数。这三种数据类型均可在数据库设计时指定小数位数,而我写下这篇备忘录就是因为这里的小数位数。

这里的小数位数是带有欺骗欺骗性质的。为何?因为这里设置的小数位数仅仅是在数据库中的显示格式。而数据库中实际存储的数据不受这个小数位数的限制。比如有双精度数"12.5678901234"我们在这数据所在列设置其小数位数为3,那么在数据库中我们将看到,这个数据变成了"12.567"。但是很遗憾,这是假象,数据库中存储的数据依然还是"12.5678901234"。

那么就提出了一个问题,如果我们只需要精确到小数点后一位,怎么办?其实也是简单的事,在应用程序的SQL语句里,我们如下查询,"SELECT FORMAT(字段名,'0.0') FROM TABLENAME",即可得到精确到小数点后一位的数据。 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
在VBAAccess数据库数据写入到SQL Server,可以采用以下步骤: 1. 首先,在VBA代码连接到Access数据库SQL Server数据库。可以使用ADODB对象模型来实现。例如,使用ADO连接字符串来连接到Access数据库: ```vba Dim conn As ADODB.Connection Set conn = New ADODB.Connection conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=YourAccessDatabase.accdb;Persist Security Info=False;" conn.Open ``` 以及连接到SQL Server数据库: ```vba Dim connSQL As ADODB.Connection Set connSQL = New ADODB.Connection connSQL.ConnectionString = "Provider=SQLOLEDB;Data Source=YourSQLServer;Initial Catalog=YourDatabase;User ID=YourUsername;Password=YourPassword;" connSQL.Open ``` 2. 使用ADODB.Recordset对象从Access数据库读取数据。例如,从Access读取用户信息: ```vba Dim rst As ADODB.Recordset Set rst = New ADODB.Recordset rst.Open "SELECT * FROM YourAccessTable", conn ``` 3. 创建一个INSERT INTO语句,以将数据插入SQL Server数据库的相应表。例如,将用户信息插入SQL Server表: ```vba While Not rst.EOF Dim sql As String sql = "INSERT INTO YourSQLTable (Column1, Column2) VALUES ('" & rst.Fields("Field1").Value & "', '" & rst.Fields("Field2").Value & "')" connSQL.Execute sql rst.MoveNext Wend ``` 4. 关闭连接和释放对象资源: ```vba rst.Close conn.Close Set rst = Nothing Set conn = Nothing Set connSQL = Nothing ``` 这样,就可以通过VBA将Access数据库数据写入到SQL Server数据库了。注意,在实际应用,需要根据具体的表结构和字段设置来编写相应的SQL语句和字段值的拼接方式。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值