Python mysql 池连接 fetchall 函数 return 'u' 数组中的关键字
Python mysql pool connection fetchall function return 'u' keyword in array
python MySQL 池返回数组中的 'u' 键,就像 - [{u'data': u'{"no_comment":1,"total_reply":2}'}]
要求的回复应该是 - [{"data": {"no_comment":1,"total_reply":2}}].
查询 - "select data from tbl_comment where id = 10"
参考代码 -
def query(_db_config, _sql, _args):
conn = get_pool_connection(_db_config)
if not isinstance(conn, PooledMySQLConnection):
cursor = conn.cursor(MySQLdb.cursors.DictCursor)
else:
cursor = conn.cursor(dictionary=True)
result = ()
try:
cursor.execute(_sql, _args)
result = cursor.fetchall()
except:
pass
rootLogger.error("query exception sql is %s ,_args is %s,stacks is %s", _sql, _args, get_caller_info_total())
rootLogger.exception("message")
finally:
cursor.close()
conn.close()
return result
你可以这样试试:
SELECT column1, CAST(CONVERT(column2 USING utf8) AS binary)
FROM my_table
WHERE my_condition;
我对获取的数据使用了编码功能。 Unicode转ASCII的解决方案
python MySQL 池返回数组中的 'u' 键,就像 - [{u'data': u'{"no_comment":1,"total_reply":2}'}]
要求的回复应该是 - [{"data": {"no_comment":1,"total_reply":2}}].
查询 - "select data from tbl_comment where id = 10"
参考代码 -
def query(_db_config, _sql, _args):
conn = get_pool_connection(_db_config)
if not isinstance(conn, PooledMySQLConnection):
cursor = conn.cursor(MySQLdb.cursors.DictCursor)
else:
cursor = conn.cursor(dictionary=True)
result = ()
try:
cursor.execute(_sql, _args)
result = cursor.fetchall()
except:
pass
rootLogger.error("query exception sql is %s ,_args is %s,stacks is %s", _sql, _args, get_caller_info_total())
rootLogger.exception("message")
finally:
cursor.close()
conn.close()
return result
你可以这样试试:
SELECT column1, CAST(CONVERT(column2 USING utf8) AS binary)
FROM my_table
WHERE my_condition;
我对获取的数据使用了编码功能。 Unicode转ASCII的解决方案