sql >> Base de Datos >  >> RDS >> Mysql

UnicodeEncodeError:el códec 'latin-1' no puede codificar el carácter

Me encontré con este mismo problema al usar el módulo Python MySQLdb. Dado que MySQL le permitirá almacenar casi todos los datos binarios que desee en un campo de texto, independientemente del juego de caracteres, encontré mi solución aquí:

Uso de UTF8 con Python MySQLdb

Editar:cite la URL anterior para satisfacer la solicitud en el primer comentario...

"UnicodeEncodeError:el códec 'latin-1' no puede codificar el carácter..."

Esto se debe a que MySQLdb normalmente intenta codificar todo a latin-1. Esto se puede solucionar ejecutando los siguientes comandos justo después de haber establecido la conexión:

db.set_character_set('utf8')
dbc.execute('SET NAMES utf8;')
dbc.execute('SET CHARACTER SET utf8;')
dbc.execute('SET character_set_connection=utf8;')

"db" es el resultado de MySQLdb.connect() , y "dbc" es el resultado de db.cursor() .