首页 > 解决方案 > 为什么 pandas read_sql_query 用问号替换 utf8 字符

问题描述

我正在使用 sqlalchemy 连接到 MySQL 数据库,并使用 pandas read_sql_query 将数据存储在数据框中。这是我的代码:

import mysql.connector
import pandas as pd
import pymysql
from sqlalchemy import create_engine

engine = create_engine('mysql+pymysql://' + username + ':' + password + '@' + server + ':' + port + '/' + database)

df = pd.read_sql_query('''
  SELECT *
  FROM
    table
  LIMIT 10
''', engine)

我试图从中获取数据的 MySQL 表中的一列包含 utf8(波斯)字符,当我在本地计算机上使用代码时,结果很好,并且 utf8 字符可以存储在数据框中。但是当我尝试在远程服务器上使用确切的代码做同样的事情时,utf8 字符被替换为问号。

我怎样才能在服务器上获得相同的结果?

PS:

标签: mysqlpython-3.xpandasunicodesqlalchemy

解决方案


推荐阅读