Để mở rộng câu trả lời chỉ được chấp nhận ở liên kết ở trên, hãy xem xét các thay đổi sau trên pymysql
hiện tại của bạn Tải về. Với MySQL 8, API mysql-python không nhận ra các bộ ký tự có thể mới hơn và do đó KeyError
nổi lên .
Để giải quyết, hãy tìm Connectors.py tập lệnh dưới pymysql
mô-đun tìm thấy tại thư mục này:
print(pymysql.__file__)
Sao lưu hoặc gốc kết nối.py kịch bản. Sau đó, kết hợp các thay đổi sau.
Bản gốc (dòng 1268-1269)
self.server_language = lang
self.server_charset = charset_by_id(lang).name
Thay thế (dòng 1268 - 1272)
self.server_language = lang
try:
self.server_charset = charset_by_id(lang).name
except KeyError:
self.server_charset = None
Hãy cẩn thận đưa các tab ẩn vào thụt lề với các dòng trên.
Tham khảo