Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Que siginifca este fallo?

Estas en el tema de Que siginifca este fallo? en el foro de Mysql en Foros del Web. No se porque al intentar crear la tabla me dice esto. Código HTML: Error consulta SQL: CREATE TABLE `e107_25phpfreechat` ( `server` varchar( 32 ) NOT ...
  #1 (permalink)  
Antiguo 17/08/2009, 18:48
 
Fecha de Ingreso: julio-2009
Mensajes: 172
Antigüedad: 14 años, 9 meses
Puntos: 3
Que siginifca este fallo?

No se porque al intentar crear la tabla me dice esto.

Código HTML:
Error

consulta SQL:

CREATE TABLE `e107_25phpfreechat` (
`server` varchar( 32 ) NOT NULL ,
`group` varchar( 64 ) NOT NULL ,
`subgroup` varchar( 128 ) NOT NULL ,
`leaf` varchar( 128 ) NOT NULL ,
`leafvalue` text NOT NULL ,
`timestamp` int( 11 ) NOT NULL ,
PRIMARY KEY ( `server` , `group` , `subgroup` , `leaf` ) ,
INDEX ( `server` , `group` , `subgroup` , `timestamp` )
) ENGINE = MYISAM

MySQL ha dicho: Documentación
#1071 - Specified key was too long; max key length is 1000 bytes
  #2 (permalink)  
Antiguo 17/08/2009, 18:58
 
Fecha de Ingreso: noviembre-2002
Ubicación: Curicó
Mensajes: 6
Antigüedad: 21 años, 4 meses
Puntos: 0
Respuesta: Que siginifca este fallo?

Error: 1071 SQLSTATE: 42000 (ER_TOO_LONG_KEY)
Mensaje: Declaracion de clave demasiado larga. La maxima longitud de clave

Replantea si el largo de los campos `group` y `subgroup` deben llevar ese largo.
trato de imaginar que ahi quieres guardar la descripción de grupo y descripción del subgrupo, si fuera ese el caso te sugiero que crees una Tabla para Grupo y otra para SubGrupo y los relaciones por codigos.
  #3 (permalink)  
Antiguo 18/08/2009, 06:55
 
Fecha de Ingreso: julio-2009
Mensajes: 172
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: Que siginifca este fallo?

E teras, gracias por tu post.

El caso, es que la tabla la crea automáticamente el plugin cuando lo instalo en e107.
En mysql que tengo localhost de mi pc si la crea y funciona correctamente.
Pero en mi servidor me dice eso y son las mismas versiones de mySQL.

No se si será prudente hacer esas modificaciones porque el plugin puede no funcionar bien.

¿Alguna idea?
  #4 (permalink)  
Antiguo 18/08/2009, 08:34
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Que siginifca este fallo?

Según el forum de MySQL, el problema se da en el momento de creación de la tabla. En definitiva es un bug de las versiones.
La solución que encontré en un foro de developers es:
Cita:
Cuando cree la tabla, no especifique los índices.
Después de crear la tabla, defina los índices en las columnas que usted desee.
Prueba a ver si funciona..
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 18/08/2009, 17:13
 
Fecha de Ingreso: julio-2009
Mensajes: 172
Antigüedad: 14 años, 9 meses
Puntos: 3
Respuesta: Que siginifca este fallo?

Ei gracias por tu respuesta.

Soy un poco profano en esto. Me podrías explicar que tengo que poner.

Es decir, en vez de esto:

CREATE TABLE `e107_25phpfreechat` (
`server` varchar( 32 ) NOT NULL ,
`group` varchar( 64 ) NOT NULL ,
`subgroup` varchar( 128 ) NOT NULL ,
`leaf` varchar( 128 ) NOT NULL ,
`leafvalue` text NOT NULL ,
`timestamp` int( 11 ) NOT NULL ,
PRIMARY KEY ( `server` , `group` , `subgroup` , `leaf` ) ,
INDEX ( `server` , `group` , `subgroup` , `timestamp` )
) ENGINE = MYISAM


Como lo tendría que poner?

Parecerá que tengo un poco de morro pero es que me hace mucha falta ese plugin en concreto y soy muy novato.

Ya de paso, si me podeis decir donde puedo encontrar información sobre mySQL, pero que sea comprensible para novatos me vendría bien.

Un abrazo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:28.