Pasa que estaba exportando unas bases de datos desde PHPMyadmin a CSV de Excel, y no me di cuenta y todas quedaron mal, sin acentos y sin ñ, y vi que poniendo el conjunto de caracteres del archivo a ISO 8859-1 si sale bien, por que sucede esto? yo estaba convencido de que utf8 era la mejor codificacion para español, deberia cambiarme a ISO 8859-1 de ahora en adelante???
Esto me lleva a pensar tambien, cual es el mejor juego de caracteres para definir una tabla cada que vaya usar:
CREATE TABLE aTable (
id BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
aNumber bigint(20) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARACTER SET=utf8;
Deberia Usar mejor entonces algo del tipo:
CREATE TABLE `autores` (
`autor_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`nombre` varchar(30) COLLATE latin1_spanish_ci DEFAULT NULL,
`apellidos` varchar(30) COLLATE latin1_spanish_ci NOT NULL,
PRIMARY KEY (`autor_id`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1 COLLATE=latin1_spanish_ci
Aca encontre un articulo muy bueno sobre este tema:
http://blog.unreal4u.com/2012/08/sobre-collation-y-charset-en-mysql/