强制MySQLdb将所有MySQL数据视为字符串

2024-04-18 21:32:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个VARCHAR字段,它偶尔存储数字(只有数字的随机字符串,很少)。当ISELECT字段时,MySQLdb将该行上的字段转换为整数,有时会产生溢出。你知道吗

我知道MySQLdb.connect()接受一个名为conv的参数,该参数覆盖默认的MySQL字符串结果-->;Python数据类型转换。但是,我不知道如何重写它以字符串形式返回所有MySQL数据。你知道吗

如何重写MySQLdb.connect()conv参数以将MySQL中的所有数据作为Python字符串返回?有别的解决办法吗?你知道吗


Tags: 数据字符串gt参数connectmysql数字整数
1条回答
网友
1楼 · 发布于 2024-04-18 21:32:48

根据thisconv是字段类型(MySQLdb.constants.FIELD_TYPE)和Python数据类型之间的字典。例如,您可以:

from MySQLdb.constants import FIELD_TYPE
conv = { FIELD_TYPE.VARCHAR: str }

或者更一般地说(虽然有点像黑客):

from collections import defaultdict #if on Python 3
conv = defaultdict(lambda: str)

强制将所有数据类型转换为str。你知道吗

相关问题 更多 >