【发布时间】:2013-10-15 20:59:58
【问题描述】:
我将 Mysqldb 与 Python(2.7) 一起使用,以从具有字符集 latin1 的 Mysql 数据库中返回一堆值。
mysql 数据库在返回时具有 bit(1) 类型的值,它们看起来像这样 '\x01'
十进制值返回如下 Decimal('0E-8')
其余的值和类型都很好。
示例数据库结果集:
{'test': '\x01', 'currency': u'bla', 'balance': Decimal('0E-8'), 'first': u'John'}
这是我连接到数据库的方式: self.con = MySQLdb.connect(host = conn['host'], user = conn['user'], passwd=conn['passwd'], db=conn['db'], charset=conn['charset '],port = int(conn['port']) if 'port' in conn else 3306)
我希望将 bit(1) 值返回为 True 或 False。 我环顾四周,我认为可能是做 MySQLdb.converters.conversions 但我不知道如何实现这一点。任何想法都会很棒。 谢谢
而且我无权更改数据库中的类型。
【问题讨论】:
标签: python mysql python-2.7 mysql-python