Ver Mensaje Individual
  #14 (permalink)  
Antiguo 21/03/2012, 13:44
Avatar de calakra
calakra
 
Fecha de Ingreso: septiembre-2009
Mensajes: 182
Antigüedad: 14 años, 7 meses
Puntos: 0
Información Respuesta: codificacion script

Pues creo que ya le avance algo pero aun tengo un error y pues para variar estoy atorado

lo que pasa es lo siguiente, entro a mysql y pongo el siguiente

por script que yo realice esta el siguiente codigo

Código SQL:
Ver original
  1. CREATE  TABLE IF NOT EXISTS `SSA`.`rol1` (
  2.   `rol_id` SMALLINT UNSIGNED NOT NULL AUTO_INCREMENT ,
  3.   `rol_etiqueta` VARCHAR(45)  NOT NULL ,
  4.   `rol_permisos` VARCHAR(100)  NULL ,
  5.   `rol_status` SMALLINT UNSIGNED NULL ,
  6.   PRIMARY KEY (`rol_id`) )
  7. ENGINE = InnoDB DEFAULT CHARSET=utf8;

y lo ejecuto con el siguiente comando

mysql> source c:\script\tablas1.sql

porterior a eso tengo el archivo el cual inserta en la tabla (el archivo tiene una codificacion utf8) el cual tiene lo siguiente
Código MySQL:
Ver original
  1. /*Se inserta en la tabla de roles;*/
  2. insert into rol1 (rol_etiqueta,rol_permisos) values ('año','AÑO');
  3. insert into rol1 (rol_etiqueta,rol_permisos) values ("año","AÑO");

lo ejecuto con la siguiente comando

mysql> source c:\script\insert.sql

vemos el resultado y es el siguiente

mysql> select * from rol1;
+--------+--------------+--------------+------------+
| rol_id | rol_etiqueta | rol_permisos | rol_status |
+--------+--------------+--------------+------------+
| 1 | año | AÑO | NULL |
| 2 | año | AÑO | NULL |
+--------+--------------+--------------+------------+

despues pongo el siguiente comando que busque por internet

SET LOCAL character_set_client='utf8';
SET @@local.character_set_client='utf8';

vuelvo a insertar

mysql> source c:\script\insert.sql

y reviso la tabla

mysql> select * from rol1;
+--------+--------------+--------------+------------+
| rol_id | rol_etiqueta | rol_permisos | rol_status |
+--------+--------------+--------------+------------+
| 1 | año | AÑO | NULL |
| 2 | año | AÑO | NULL |
| 3 | año | AÑO | NULL |
| 4 | año | AÑO | NULL |
+--------+--------------+--------------+------------+

si nos damos cuenta ahi aparece bien la letra Ñ

ahora si desde consola inserto dos registros mas

mysql> insert into rol1 (rol_etiqueta,rol_permisos) values ("año","AÑO");
mysql> insert into rol1 (rol_etiqueta,rol_permisos) values ("año","AÑO");

al realizar la consulta queda de la siguiente forma


mysql> select * from rol1;
+--------+--------------+--------------+------------+
| rol_id | rol_etiqueta | rol_permisos | rol_status |
+--------+--------------+--------------+------------+
| 1 | año | AÑO | NULL |
| 2 | año | AÑO | NULL |
| 3 | año | AÑO | NULL |
| 4 | año | AÑO | NULL |
| 7 | a?o | A?O | NULL |
| 8 | a?o | A?O | NULL |
+--------+--------------+--------------+------------+

ahora el año aprace "a?o"

No se que es lo que pase o que onda, que es donde le debo mover???

por que ahora solo agrega las Ñ cuando es por script, pero desde consola al agregar un registro la letra ahora es ?

y en las consultas pues claro que no me respeta

En donde estará mal???

Última edición por calakra; 21/03/2012 a las 13:46 Razón: eror al poner tabla