如何将Python十进制转换为SQLite数值?
|
我有一个程序,可以读取JSON中的财务数据并将其插入到SQLite数据库中。问题是当我将其插入SQLite数字列时,它似乎不喜欢小数对象。
我已经找到了之前回答过的问题,但是答案已经过时了,据我了解,SQLite现在具有一种称为数字的货币数据类型。
现在,作为一种解决方法,我将十进制值存储为文本,但是可以将其存储为数字吗?对于数据库插入和财务计算,我是否会承受将小数转换为字符串,反之亦然的开销?
没有找到相关结果
已邀请:
4 个回复
呈辖玫割善
可让您注册一个适配器(在插入时将
转换为
)和一个转换器(在获取时将
转换为
)。 以下是来自文档的示例代码的略微修改版本:
产量
逆捐凶撤小
虽然从美学上讲不是很好,但确实打败了sqlite渴望将字段存储为整数并失去精度的渴望。
恋裂
不知道这是否是处理它的好方法-欢迎发表评论
距相镭
数据类型,而
示例数据类型只是打开了
相似性。 如果是我的数据,我可能会存储整数形式的货币“单位”-几美分或十分之一便士,或百分之一便士,如果合适的话-然后使用比例因子从数据库读取数据时,将整数输入转换为十进制等效值以进行计算。用整数搞砸比较困难。