2011-05-23 42 views
8

Acabo de comprobar mis tablas de MySQL y tengo el conjunto predeterminado como latin1. ¿Es eso generalmente el predeterminado?Cómo hacer que una migración de Rails sea utf-8 en lugar de mi valor predeterminado de latin1

¿Cómo puedo hacer que sea explícita para todas mis tablas que quiero que la base de datos sea utf-8?

Sé que hay una configuración de base de datos que puede cambiar el valor predeterminado, pero creo que también hay una forma de hacerlo por migración. ¿Cómo podría establecer de forma permanente migraciones de mis raíles a partir de ahora para ser utf-8?

Gracias!

Respuesta

16

create_table(:table_name, :options => 'ENGINE=InnoDB DEFAULT CHARSET=utf8')

+1

Como alternativa, se puede establecer '-storage-engine defecto = InnoDB' en su my.cnf para MySQL. También puede establecer conjunto de caracteres predeterminado y colación de MySQL a utf8. Aquí hay muchas opciones, por lo que querrá profundizar en los documentos para obtener más información al respecto: http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html – xentek

Cuestiones relacionadas