当前位置:  开发笔记 > 编程语言 > 正文

sqlite3和cursor.description

如何解决《sqlite3和cursor.description》经验,为你挑选了1个好方法。

在python中使用sqlite3模块时,除列名之外的cursor.description的所有元素都设置为None,因此该元组不能用于查找查询结果的列类型(与其他符合DB-API的模块不同).获取列的类型pragma table_info(table_name).fetchall()以获取表的描述,将其存储在内存中,然后将cursor.description中的列名与整个表描述相匹配是唯一的方法吗?



1> Martin v. Lö..:

不,这不是唯一的方法.或者,您也可以获取一行,迭代它,并检查各个列的Python对象和类型.除非值为None(在这种情况下SQL字段为NULL),否则这应该为您提供相当精确的指示数据库列类型.

sqlite3仅在一个地方使用,sqlite3_column_decltype并且sqlite3_column_type每个都没有,并且Python应用程序都不能访问它们 - 因此它们不是您可能一直在寻找的"直接"方式.

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有