在sqlite3中有这个表:
create table t(d double)
在python中,代码是:
sqlite3.register_converter('double', Decimal)
...
for d, in connection.execute('select d from t limit 1'):
print type(d)
打印结果为:<type 'float'>
知道为什么吗?
答案 0 :(得分:1)
使用可选参数连接到数据库:
detect_types=sqlite3.PARSE_DECLTYPES
即:
conn = sqlite3.connect('database.db', detect_types=sqlite3.PARSE_DECLTYPES)
然后像你一样继续。它应该工作。
请参阅: