Tengo un gran archivo CSV que voy a cargar en una tabla MySQL. Sin embargo, estos datos están codificados en formato utf-8, ya que incluyen algunos caracteres no ingleses. Ya he configurado el conjunto de caracteres de la columna correspondiente en la tabla para utf-8. Pero cuando cargo mi archivo. los caracteres no ingleses se convierten en personajes extraños (cuando selecciono las filas de mi mesa). ¿Debo codificar mis datos antes de cargarlos en la tabla? Si es así, ¿cómo puedo hacer esto? Estoy usando Python para cargar los datos y usar el comando LOAD DATA LOCAL INFILE. graciasCargando texto codificado en utf-8 en la tabla MySQL
18
A
Respuesta
13
como dijo en http://dev.mysql.com/doc/refman/5.1/en/load-data.html, puede especificar el conjunto de caracteres utilizado por el archivo CSV con el "juego de caracteres" parámetro opcional de carga de datos LOCAL INFILE
2
debe enviar
init_command = 'SET NAMES UTF8'
use_unicode = True
charset = 'utf8'
cuando haciendo MySQLdb.connect() por ej.
dbconfig = {}
dbconfig['host'] = 'localhost'
dbconfig['user'] = ''
dbconfig['passwd'] = ''
dbconfig['db'] = ''
dbconfig['init_command'] = 'SET NAMES UTF8'
dbconfig['use_unicode'] = True
dbconfig['charset'] = 'utf8'
conn = MySQLdb.connect(**dbconfig)
edición: Ah, lo siento, veo que ha añadido que está utilizando "LOAD DATA LOCAL INFILE" - esto no era claro por su pregunta inicial :)
62
Trate
2
No es necesario codificar sus caracteres en el archivo, pero debe asegurarse de que su archivo esté codificando en UTF-8 antes de cargar este archivo en la base de datos.
Cuestiones relacionadas
- 1. ¿Cómo me aseguro de que el texto codificado en un formulario sea utf8
- 2. Búsqueda de texto codificado en xcode
- 3. Java + MySQL UTF8 Problema
- 4. mysql: ESTABLECER NOMBRES utf8 en cada conexión?
- 5. MySQL UTF8 varchar columna tamaño
- 6. Cargando Contenido AJAX codificado en JSON en las pestañas de la IU jQuery
- 7. MVC3 TextBoxFor con texto codificado
- 8. MySQL Convertir datos latin1 a UTF8
- 9. MySQL - Convertir caracteres latin1 en una mesa de UTF8 en UTF8
- 10. php json_encode utf8 char problema (mysql)
- 11. Compilación (javac) de un código fuente Java codificado en UTF8 con una lista de materiales
- 12. Cargando datos de un archivo de texto en una tabla en el oráculo
- 13. tabla pivote en mysql
- 14. Tener texto codificado con un enlace en un TextBlock
- 15. ¿Por qué IE no muestra texto codificado en UTF-8?
- 16. PHP Convertir texto codificado para Windows-1256 en UTF-8
- 17. Lectura de un archivo de texto codificado UTF-8 en Mathematica
- 18. Convirtiendo el problema ANSI en UTF8 C#
- 19. No se puede insertar el carácter ♥ en la tabla MySQL
- 20. MySQL UTF8 con Hibernate 3 y Spring
- 21. Corregir la codificación del archivo de texto codificado incoherentemente
- 22. Flujo de trabajo UTF8 PHP, MySQL resume
- 23. Cargando texto RTF de la base de datos en TRichEdit
- 24. clave única en toda la tabla mysql?
- 25. Cómo colocar toda la tabla en MySQL?
- 26. Drop atornilló la tabla en Mysql db
- 27. mysql :: insertar en la tabla, datos de otra tabla?
- 28. caracteres especiales en MySQL Nombre de la tabla
- 29. Convertir la tabla HTML en texto
- 30. ¿Cómo manejar una tabla grande en MySQL?
debe ser la respuesta aceptada – memical
agregando "JUEGO DE CARACTERES UTF8" fue la clave! – nemnesic
Oh mi, me tomó tanto tiempo. Intenté todo, simplemente siguió convirtiendo utf8 en latino e importándolo a una tabla utf 8. La opción de codificación funcionó de maravillas. – John