Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   problemas al insertar datos en my bd (http://www.forosdelweb.com/f86/problemas-insertar-datos-my-bd-503243/)

franklin85 05/07/2007 16:05

problemas al insertar datos en my bd
 
Hola a todos my pregunta es la siguiente:
He creado una tabla llamada admin en my base de datos de Mysql
Código PHP:

create table admin
(
  
username char(16not null primary key,
  
password char(16not null
); 

despues cuando quiero insertar datos en dicha tabla no puedo, el dato a insertar es:
Código PHP:

INSERT INTO admin VALUES ('admin'password('admin')); 

el mysql me vota un error el cual es:
Código:

#1406 - Data too long for column 'password' at row 1
a que se debe este error.
Muchas gracias a todas las personas interesadas en ayudarme.

franklin85 09/07/2007 08:42

Re: problemas al insertar datos en my bd
 
porfavor ayudenme.

Genetix 09/07/2007 10:32

Re: problemas al insertar datos en my bd
 
Hola
Pues el mensaje de error te esta diciendo que el campo es muy pequeño para los datos que estas almacenando.
verifica que tu campo sea de tipo varchar y tenga de tamaño 16 o prueba con mas

Saludos!

Yranac 09/07/2007 11:55

Re: problemas al insertar datos en my bd
 
Si no me equivoco la funcion password te devuelve el md5 de lo que le pases, es decir que son 32 caracteres, en cambio tu dejaste espacio solo para 16, ahi está el error.

cleptomano 09/07/2007 11:56

Re: problemas al insertar datos en my bd
 
puedes intentar de esta forma
INSERT INTO admin (username,password) VALUES ('admin', 'admin');

Genetix 09/07/2007 13:28

Re: problemas al insertar datos en my bd
 
Cita:

Si no me equivoco la funcion password te devuelve el md5 de lo que le pases, es decir que son 32 caracteres, en cambio tu dejaste espacio solo para 16, ahi está el error.
Falso
La función password solo devuelve 16 caracteres

axz 09/07/2007 13:38

Re: problemas al insertar datos en my bd
 
La función password no devuelve precisamente el MD5, para prueba intenta esto:
Código PHP:

SELECT password'admin' ), md5'admin' ); 

verás que el resultado es distinto en ambas encripciones, pero tu solución debería estar aumentando el tamaño de tu campo a (en la versión 5.x de mysql) a 41 caracteres al menos ...

pero si lo prefieres más pequeño (32 caracteres)
puedes usar:
Código PHP:

INSERT INTO admin VALUES 'admin'MD5'admin' ) ); 



La zona horaria es GMT -6. Ahora son las 06:34.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.