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

Fallas incompresibles...

Estas en el tema de Fallas incompresibles... en el foro de Mysql en Foros del Web. Hola amigos, estoy con mi primer base de datos en MySQL, en principio no tengo muchos problemas pero hay algo que sucede seguido y no ...
  #1 (permalink)  
Antiguo 26/03/2009, 10:09
Avatar de jovix777  
Fecha de Ingreso: abril-2008
Ubicación: Córdoba - Argentina
Mensajes: 151
Antigüedad: 16 años
Puntos: 2
Fallas incompresibles...

Hola amigos, estoy con mi primer base de datos en MySQL, en principio no tengo muchos problemas pero hay algo que sucede seguido y no encuentro el porque.

Tengo una base con 3 tablas, la data la cargo a traves de un php, que toma las variables de un Flash AS3, sucede que todo funcionaba bien, cargaba los datos en las tres tablas, pero ahora dejo de cargarlos en dos de ellas pero si en la restante, aparentemente no hay errores, ya que el php y el flash no fueron modificados.

Podria ser un problema con los ID??? en una de las tablas le borro la ultima entrada y cuando hago otro ingreso lo graba, pero despues ya no, es decir graba uno solo. En la otra tabla no se graba ninguna entrada.

Es tan sensible el MySQL? con cada cambio que hago me da la impresion de que ya no va funcionar. En una de las pruebas, cambie solo el nombre de la variable que contiene INSERT INTO, obviamente cambiandolo tambien en mysql_query y ya no grabo las entradas.

Agradezco una guia!!!
  #2 (permalink)  
Antiguo 26/03/2009, 10:20
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 2 meses
Puntos: 45
Respuesta: Fallas incompresibles...

Por lo que leo, no creo que se un problema de mysql, talvez sea de programación y como pasas las variables, en todo caso, puedes poner la estructura de tus tablas?
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #3 (permalink)  
Antiguo 26/03/2009, 11:38
Avatar de jovix777  
Fecha de Ingreso: abril-2008
Ubicación: Córdoba - Argentina
Mensajes: 151
Antigüedad: 16 años
Puntos: 2
Respuesta: Fallas incompresibles...

Genetix, acabo de hacer una prueba con la tabla que no graba los datos, le borro las entradas que tiene, hago una nueva prueba y se graban las entradas correspondientes con ID 0, vuelvo a probar con otro ingreso y nada, solo queda el ID 0 con sus datos pero no graba mas a partir de alli. Por eso decia que algun rollo con el ID PRIMARY debe haber. La otra tabla graba los ingresos perfectamente, por eso no creo que sea problema de como se pasan las variables, porque para las dos tablas el procedimiento es el mismo (la tercer tabla que antes dije que no funcionaba, si lo hacia solo que mandaba los nuevos ingresos a una pagina intermedia y no los veia, otro problema de ID; pero a esa la borre). Estoy trabajando con phpMyAdmin (talvez deba trabajar sobre codigo MySQL directamente) La tabla tiene esta estructura:


CREATE TABLE `personal` (
`id` int(5) NOT NULL,
`first_name` varchar(15) character set utf8 collate utf8_unicode_ci NOT NULL,
`middle_name` varchar(15) character set utf8 collate utf8_unicode_ci default NULL,
`last_name` varchar(50) character set utf8 collate utf8_unicode_ci NOT NULL,
`date_birth` varchar(10) NOT NULL,
`gender` varchar(6) character set utf8 collate utf8_unicode_ci NOT NULL,
`country` varchar(50) character set utf8 collate utf8_unicode_ci NOT NULL,
`phone` varchar(15) NOT NULL,
`fax` varchar(15) default NULL,
`cellular` varchar(15) default NULL,
`website` varchar(50) character set utf8 collate utf8_unicode_ci default NULL,
`link_exchange` varchar(50) character set utf8 collate utf8_unicode_ci default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

--
-- Volcar la base de datos para la tabla `personal`
--

INSERT INTO `personal` VALUES(0, 'a', 'a', 'a', 'a', 'male', 'Andorra', 'a', ' ', ' ', ' ', 'http:// ');
  #4 (permalink)  
Antiguo 26/03/2009, 11:51
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 2 meses
Puntos: 45
Respuesta: Fallas incompresibles...

Hola
por lo que veo en tu estructura, tienes que crear una ID (identificado único) para cada registro que insertes.

Si los ids no lo creas, entonces tienes que declara el campo id como autoincrement, de esa manera no habrá Ids repetidos y podrán ingresar los demás registros

tu tabla tendría que ser asi

Código sql:
Ver original
  1. CREATE TABLE `personal` (
  2. `id` INT(5) NOT NULL AUTO_INCREMENT,
  3. `first_name` VARCHAR(15) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  4. `middle_name` VARCHAR(15) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
  5. `last_name` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  6. `date_birth` VARCHAR(10) NOT NULL,
  7. `gender` VARCHAR(6) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  8. `country` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  9. `phone` VARCHAR(15) NOT NULL,
  10. `fax` VARCHAR(15) DEFAULT NULL,
  11. `cellular` VARCHAR(15) DEFAULT NULL,
  12. `website` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
  13. `link_exchange` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci DEFAULT NULL,
  14. PRIMARY KEY (`id`)
  15. ) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Y cuando insertes obvias el campo id, ya que se auto incrementa
Código sql:
Ver original
  1. INSERT INTO `personal` VALUES( 'a', 'a', 'a', 'a', 'male', 'Andorra', 'a', ' ', ' ', ' ', 'http:// ');

Saludos!
__________________
"El conocimiento nos hace responsables."
twitter: @benjamingb
blog personal: http://codigolinea.com
ZF Manual en español http://manual.zfdes.com
  #5 (permalink)  
Antiguo 26/03/2009, 12:45
Avatar de jovix777  
Fecha de Ingreso: abril-2008
Ubicación: Córdoba - Argentina
Mensajes: 151
Antigüedad: 16 años
Puntos: 2
Respuesta: Fallas incompresibles...

gracias! entonces le faltaba el auto_increment!!!

Si, el tema de las id recien lo estoy entendiendo, y aprovecho para hacerte una pregunta: La base esta tiene 8 tablas, tiene muchos datos por eso me parecio mas ordenado separarlos en areas, ¿como hago para que los datos ingresados del usuario X permanezcan vinculados en las 8 tablas?, o sea, si mas adelante borro la entrada del usuario X quiero que se borren las entradas correspondientes de cada tabla, o si se hace algun tipo de reordenamiento, siempre concuerden los ingresos de cada tabla para el mismo usuario. Pienso que se deberia hacer un ID unico en la tabla 1 y que ese ID sea el mismo en las demas y que a su vez esté vinculado al principal, supongo que esto se puede hacer, aun no vi como. Ademas, yo estoy probando con 3 tablas entre todas las pruebas, ya hay como 90 ingresos, cuando cree las 5 tablas restantes estas estaran vacias, ¿como hago que el ID de las nuevas tablas sigan el orden de las tablas que ya estan?, en este caso tendrian que tener un ID 91 y no 1...

Mil gracias por tus enseñanzas! espero aprender y devolver toda esta buena onda.
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 15:10.