Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

[Ayuda] Problema Con BD en Mysql

Estas en el tema de [Ayuda] Problema Con BD en Mysql en el foro de Visual Basic clásico en Foros del Web. hola bueno este es mi primer post que hago para pedir ayuda en este gran foro. bueno les explico tengo un sistema en VB 6.0 ...
  #1 (permalink)  
Antiguo 19/11/2009, 11:54
 
Fecha de Ingreso: septiembre-2008
Mensajes: 38
Antigüedad: 15 años, 7 meses
Puntos: 0
[Ayuda] Problema Con BD en Mysql

hola bueno este es mi primer post que hago para pedir ayuda en este gran foro.

bueno les explico tengo un sistema en VB 6.0 con una Bd en Mysql.

hmmm el problema que tengo es en una tabla, la cual me genera un error ala hora de guardar los datos de un formulario a mi tabla de mi Bd del mysql.

Cita:
Cannot add or update a child row: a foreign key constraint fails (`test`, `venta_maqeuilla`, CONSTRAINT `venta_maquilla_ibfk_5`FOREIGN KEY (`id_secado`) REFERENCE `secado`(`id_secado`) ON DELETE NO ACTION ON UPDATE NO ACTION)
ese es mi problema. bueno soy novato en cuanto Mysql. pero por lo que he podido apreciar, creo que el error yace en la FK,ya que en las referencias, que se hace entre si. osea entra mi Tabla

- Secado

- Venta_maquilla

en la tabla secado el campo id_secado es un campo Autoincrement.

y en la tabla Venta_maquilla id_secado no lo es. pero le puse un valor por defecto el cual es 0

hmmm creo que no habria porque ponerle Autoincrement al campo id_secado de la tabla venta_maquilla. ya que su colummna referencial ia lo es.

pero bueno espero sus respuestas de ayuda gracias, ^^
  #2 (permalink)  
Antiguo 19/11/2009, 12:04
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: [Ayuda] Problema Con BD en Mysql

Significa que se está violando la integridad referencial. El id_secando en venta_maquinilla NO debe ser AUTO_INCREMENT, y cuando vayas a insertar o actualizar algún valor en ese campo, debe ser un id existente en la tabla secado.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 19/11/2009, 12:10
 
Fecha de Ingreso: septiembre-2008
Mensajes: 38
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: [Ayuda] Problema Con BD en Mysql

Cita:
Iniciado por David Ver Mensaje
Significa que se está violando la integridad referencial. El id_secando en venta_maquinilla NO debe ser AUTO_INCREMENT, y cuando vayas a insertar o actualizar algún valor en ese campo, debe ser un id existente en la tabla secado.
Gracias por tu respuesta,

exactamente en mi tabla venta_maquilla la columna id_secado. esta sin Autoincrement. como tu lo dices.

en cuanto en la tabla secado no hay datos aun. en la colummna id_secado sera por eso??

ya que en mi tabla venta_maquilla la columna id_secado la tengo con valor default 0 lo dejo o lo quito?

lo que pasa es que esas tablas las estoy trabajando en 2 formularios similares, lo que pasa es que en un formulario, la colummna id_secado de la tabla venta_maquilla la estoy obviando ya que no hay necesidad de insertarla ahi.

espero tu ayuda gracias nuevamente.
  #4 (permalink)  
Antiguo 19/11/2009, 12:35
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: [Ayuda] Problema Con BD en Mysql

Cita:
Iniciado por thebestmatrix007 Ver Mensaje
lo que pasa es que esas tablas las estoy trabajando en 2 formularios similares, lo que pasa es que en un formulario, la colummna id_secado de la tabla venta_maquilla la estoy obviando ya que no hay necesidad de insertarla ahi.
No puedes "obviar" una columna FK:
Cita:
InnoDB rechaza cualquier operación INSERT o UPDATE que intente crear un valor de clave foránea en una tabla hija sin un valor de clave candidata coincidente en la tabla padre.
Véase: http://dev.mysql.com/doc/refman/5.0/...nstraints.html
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 19/11/2009, 13:36
 
Fecha de Ingreso: septiembre-2008
Mensajes: 38
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: [Ayuda] Problema Con BD en Mysql

bueno gracias nuevamente por la respuesta, intente tambien poner en el formulario en el que obviaba el id_secado la colummna le cree un txtbox con un valor default 0 para dejarlo de obviar y asi ya llamarlo.

pero me sige arrojando el mismo error. no se que pueda ser.

asi hago la llamada de mi tabla de la base de datos.

Cita:
insert into venta_maquilla(id_venta_maq, cod_cli, cod_pro, id_secado. n_sacos, kg_saco, kg_extra,total_kg, " & _
" totalp_costos, " & _
" precio_saco, total_costo, merma, fecha) " & _

"values('" & txtnumero.Text & "','" & TXTCODCLI.Text & "','" & LvProduccion.TextMatrix(i, 4) & "','" & txtidsecado.Text & "'," & LvProduccion.TextMatrix(i, 1) & "," & LvProduccion.TextMatrix(i, 2) & "," & LvProduccion.TextMatrix(i, 3) & "," & LvProduccion.TextMatrix(i, 5) & ", " & _
"'" & txtptotal.Text & "'," & LvProduccion.TextMatrix(i, 6) & ",'" & txtTotal.Text & "','" & txtprocesar.Text & "','" & fecha & "')"
como veras esa es la llamada de datos para poder guardar la informacion de ese formulario.

ahi estoy llamando ala columna id_secado. y la enlazo con txtidsecado.

todo esta en orden, ia que yo si lo he revisado si los datos corresponden al campo y si corresponden.

mi pregunta es

mi problema no sera porque la colummna id_secado de mi tabla secado, esta vacia y no contiene datos. sera eso el problema o que?

espero su ayuda gracias
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 13:30.