Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > Mysql

Respuesta
 
Herramientas Desplegado
Antiguo 14-jul-2007, 01:02   #1 (permalink)
Slappter no se puede cailificar en este momento
 
Fecha de Ingreso: agosto-2006
Mensajes: 39
#1067 Invalid default value

Hola, les planteo mi problema:

Al intentar crear una tabla en mi base de datos (mediante una consulta SQL desde Phpmyadmin) con el siguiente codigo:

CREATE TABLE prueba (
ID_Prueba int(11) DEFAULT '0' NOT NULL auto_increment,
Nombre varchar(100),
Apellidos varchar(100),
PRIMARY KEY (ID_Prueba),
UNIQUE ID_Prueba (ID_Prueba)
);

Recibo un error de "#1067 - Invalid default value for 'ID_Prueba' "

Buscando por Internet encontre mucha informacion y la mayoria hacia referencia a que es una vulnerabilidad de MySql en esa version (incluso la vi en la misma pagina de MySql y por cierto la version del servidor que les hablo es la 5.0.41 montada en Debian).

De todas la informacion que encontre no pude ver en ningun lugar la solucion (en codigo obiamente) del problema, por lo que me vi obligado a preguntarles a ustedes.

Recien estoy comenzando con bases de datos en PHP, por lo que supongo mi problema es un poco tonto y se puede solucionar facilmente pero no tengo conocimientos sobre el lenguaje SQL (va a ser el proximo lenguaje que aprenda, ya que viene de la mano de PHP) por lo que no pude solucionarlo solo.

Desde ya les agradezco a los que se interesen solo por leer mi problema (al menos leer el titulo) y obiamente mas todavia a los que publiquen una respuesta para ayudarme con mi problema.

Gracias a todos.
Slappter está desconectado   Responder Citando
Antiguo 14-jul-2007, 08:18   #2 (permalink)
deadlykyo ha deshabilitado el karma
 
Avatar de deadlykyo
 
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 743
#1067 Invalid default value

Aqui te dejo una nota extractada de la documentacion de mysql, eso aclarara tu duda, solo le quitas el DEFAULT y tu consulta funcionara sin problemas
Cita:
Nota: Sólo puede haber una columna AUTO_INCREMENT por tabla, debe estar indexada, y no puede tener un valor DEFAULT . Una columna AUTO_INCREMENT funciona correctamente sólo si contiene sólo valores positivos.
saludos, cya
__________________
"El Conocimiento es de todos, no solo de algunos"
deadlykyo está desconectado   Responder Citando
Antiguo 14-jul-2007, 16:20   #3 (permalink)
Slappter no se puede cailificar en este momento
 
Fecha de Ingreso: agosto-2006
Mensajes: 39
Re: #1067 Invalid default value

Listo, solucinado.

El codigo final quedo asi:

Código:
CREATE TABLE prueba ( 
ID_Prueba int(11) NOT NULL auto_increment, 
Nombre varchar(100), 
Apellidos varchar(100), 
PRIMARY KEY (ID_Prueba), 
UNIQUE ID_Prueba (ID_Prueba) 
);
Recomendaria que agregaran esto al FAQ de este SubForo, porque lo vi en unos cuantos lugares por Internet (bastantes a decir verdad) y la gente no sabe aun como solucionarlo.

Gracias por la ayuda deadlykyo.
Slappter está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 23:00.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93