pythonはmysqlデータベースをインポートします.Exc.InternalError:(pymysql.err.InternalError)1366の解決策

1680 ワード

解決前
from sqlalchemy import create_engine
engine = create_engine("mysql+pymysql://use:pwd@localhost:3306/test?charset=utf8")
df.to_sql("testtable", engine, schema="test", if_exists='replace', index=True,
            chunksize=None, dtype=None)

解決後
engine = create_engine("mysql+pymysql://use:pwd@localhost:3306/test?charset=utf8mb4")

charsetタイプをutf 8 mb 4に変更すればよい追加方式であればデータベースコマンドラインに以下のコマンドを入力し、テーブルの文字セットALTER TABLEに追加で書き込むテーブル名CONVERT TO CHARACTER SET utf 8 mb 4を変更する必要がある.