微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

pyodbc 为 MS Access 双/单字段返回额外的小数位

如何解决pyodbc 为 MS Access 双/单字段返回额外的小数位

当我使用 pyodbc 从访问数据库获取数据时,它返回浮点数、日期或整数的错误格式。

例如:

这些值

enter image description here

像这样返回

enter image description here

我找了很久,我觉得是用的 ODBC Driver 引起的,但真的,我不知道。

一个示例是我的 MS Access DB 中 DATE 类型的“21/01/2021”之类的日期,将作为日期时间以中文或韩文格式 YYYY-mm-dd H:m:s 返回。>

解决方法

如果表中的字段定义使用默认格式选项,浮点列(Numeric(Double)Numeric(Single))将在 Access UI 中显示所有小数位

格式:(空)
小数位:自动

将这些设置更改为

格式:固定
小数位:2

将更改 Access UI 中的显示格式,但数字本身仍将以其完全精度存储。 ODBC 驱动程序不注意这些格式属性,因此它返回带有所有可用小数位的值。

对于日期/时间值,如果时间组件正好是午夜,则 Access UI 中的默认格式是只显示日期。但是,日期/时间值与该时间组件 (00:00:00) 一起存储,并且 ODBC 驱动程序再次返回完整值。有关更详细的说明,请参阅 this answer

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。