Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Problemas Al Guardar En Una Tabla Con Varios ID
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Problemas Al Guardar En Una Tabla Con Varios ID 
 
necesito ayuda con algo por favor, tengo problemas para guardar los datos en la tabla con esta posee varios id
es decir cuando tiene su id principal y otros foráneos no guarda datos pensé que yo estaba mal porque la tabla era grande pero me consegui con el mismo problema en una tabla mucho mas chica que solo tiene 4 campos: idprincipal 2 campos y Id foraneo.. estoy trabajando con mysql y phpmyadmin
 



 
OneErick - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
pon la estructura de la tabla tal como la muestra mysql:

show create table mitabla

y el código que usas para actulizar.

Con eso podemos ayudarte.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
Asi como soy nuevo en gambas soy nuevo en el foro y no entendí lo que me pusistes :S donde hago eso? >.<  
 



 
OneErick - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
"Show create table `mitabla`" (donde mitabla es el nombre de tu tabla, claro)lo escribes en la pestaña SQL de tu phpmyadmin. Te dará una respuesta parcial y después tendrás que pulsar en "Opciones" y decir que te muestre textos completos y repetir la consulta. Copia y pega el resultado.

El código de actualización... no te cuento cómo se copia y pega de tu aplicación a éste foro, que sería un insulto a tus conocimientos de informática.

Suerte.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
shordi escribió: [Ver mensaje]
"Show create table `mitabla`" (donde mitabla es el nombre de tu tabla, claro)lo escribes en la pestaña SQL de tu phpmyadmin. Te dará una respuesta parcial y después tendrás que pulsar en "Opciones" y decir que te muestre textos completos y repetir la consulta. Copia y pega el resultado.

El código de actualización... no te cuento cómo se copia y pega de tu aplicación a éste foro, que sería un insulto a tus conocimientos de informática.

Suerte.



Pff aqui esta me tarde porque mi pc se quemo T_T

convenio_centro_salud     CREATE TABLE `convenio_centro_salud` (
 `id_centro_salud` int(10) NOT NULL AUTO_INCREMENT,
 `nombre_clinica` varchar(254) NOT NULL,
 `rif_clinica` varchar(254) NOT NULL,
 `direccion_clinica` varchar(254) NOT NULL,
 `estado_clinica` varchar(254) NOT NULL,
 `ciudad_clinica` varchar(254) NOT NULL,
 `telefono_clinica` varchar(254) NOT NULL,
 `fax_clinica` varchar(254) NOT NULL,
 `director_clinica` varchar(254) NOT NULL,
 `administrador_clinica` varchar(254) NOT NULL,
 `paginaweb_clinica` varchar(254) NOT NULL,
 `correo_clinica` varchar(254) NOT NULL,
 `id_impuesto` varchar(254) NOT NULL,
 `id_servicios_clinica` varchar(254) NOT NULL,
 `id_personal_clinica` int(254) NOT NULL,
 `id_especialidades_clinica` int(254) NOT NULL,
 `id_instalaciones_clinica` int(254) NOT NULL,
 `id_cantidad_salas` int(254) NOT NULL,
 `id_medicos` int(254) NOT NULL,
 `id_cuentas_clinica` int(11) NOT NULL,
 PRIMARY KEY (`id_centro_salud`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1


Otra cosa que pude notar no se si es un bug o un error y creo que por esto es que no me guarda en la base de datos :S

aqui la funcion:

Public operacion As String
 
 Public Sub RegistrarConvenioCentroSalud(rifcli As String, direccioncli As String, estadocli As String, ciudadcli As String, telefonocli As String, faxcli As String, directorcli As String, administradorcli As String, paginawebcli As String, correocli As String)
 Dim Z As String
 If operacion = 1 Then
 Z = "Inser Into convenio_centro_salud(rif_clinica, direccion_clinica, estado_clinica, ciudad_clinica, telefono_clinica, fax_clinica, director_clinica, administrador_clinica, paginaweb_clinica, correo_clinica)values('" & rifcli & "','" & direccioncli & "','" & estadocli & "','" & ciudadcli & "','" & telefonocli & "','" & faxcli & "','" & directorcli & "','" & administradorcli & "','" & paginawebcli & "','" & correocli & "')"
 Message.Info("Datos Guardados exitosamente")
 Try conexion.cn.Exec(Z)
 Endif
End


Boton guardar del formulario

Public Sub Button1_Click()
  
  If Button1.Tag = 1
  RegistroConvenioCentroSalud2.operacion = "1"
  RegistroConvenioCentroSalud2.RegistrarConvenioCentroSalud(rifclinica, direccionclinica.Text, estadoclinica.Text, ciudadclinica.Text, telefonoclinica.Text, faxclinica.Text, directorclinica.Text, administradorclinica.Text, paginaclinica.Text, correoclinica.Text)                
limpiartextbox()
Endif
End
 

aqui el supuesto BUG

 bug

Si puedes notar cuando esta haciendo la visualización de las variables de la función en la primera que es RIF sale IF,  'WTF y creo que por eso no me guarda :S Se come la primera letra de la variable sea con esa o con cualquier otra el error persiste! :S
 



 
última edición por OneErick el Miercoles, 20 Marzo 2013, 17:48; editado 2 veces 
OneErick - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
Para empezar, sin tiempo de analizar tu código pones z=inser into yu deberías poner insert into , por si no lo notas te falta la "T" al final. Si trabajas con phpmyadmin siempre puedes probar tus consultas en el sql del mismo para ver si funcionan.
Saludos
 




===================
Migrando desde visual basic, el Gambas de Ms
Mi blog gambero
 
Dani26 - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
Por partes. Sobre tu base de datos:
1.- Veo que la tabla se llama convenio_centro salud... pero contiene datos de una clínica. Si
     a)"centro de salud" se compone de una clínica, perfecto, aunque entonces no sé por qué todos los campos contienen "clinica" y no "centro_salud". Creo que la tabla debería llamarse clinicas y punto.
     b) Si un centro de salud se compone de varias clinicas... mal. confundes los conceptos mezclándolos en una sola tabla.

2.- Veo que declaras todos lo campos como not null. ¿Y si una clínica no tiene fax, por ejemplo? ¿no permites que el campo quede en blanco? Todo no nulo puede ser, seguramente es, demasiado restrictivo. Reserva esa cualidad para los campos importantes (id_centro_salud, nombre_clinica, etc)

3.- Repites una y otra vez la plabra clinica en cada campo. Eso sobra ¿Cómo piensas consultar tu base? Lo lógico es usas un result o una sentencia sql. Si
     a) usas un result, éste se llamará "clinica" o algo parecido (Dim clinica as result) y la mencion a los campos será -por ejemplo- if clinica!nombre_clinica > "" then... O sea que nos sobra una clinica.
     b) en una sentencia sql puedes dar un alias al nombre de la tabla ("Select nombre_clinica from convenio_centro_salud clinicas", por ejemplo) con lo que el campo que retorna se llama "clinicas.nombre_clinica"... vuelve a sobrar una clinica.
    En otras palabras: Salvo los campos que son claves primarias o foráneas (sobre los cuales es conveniente aplicar nombres autocontenidos estandarizados) es mejor limitarse a que el campo defina sólo lo que es "nombre","direccion","localidad". Son nombres más cortos y que no dan lugar a confusión a la hora de consultar por lo que te he puesto en los puntos a y b más arriba.

4.- Defines varios campos como INT(254) No sé la cantidad de trillones que se pueden contar con 254 dígitos, pero me parece muy optimista en campos como "id_cantidad_salas". Si esos campos son, pretendenser, claves foráneas de otras tablas, con INT(11) (El default para mysql) van que chutan. Si son otra cosa... pues ajusta un poco, que no cuesta nada y ahorras espacio en la base de datos y en la memoria.

5.- Los últimos 8 campos "id_algo" parecen querer ser claves foráneas de otras tablas. Pero no entiendo el concepto. Tanto si pretendes establecer una relación uno a uno, un registro en el padre, por un registro en el hijo como uno a muchos un registro en el padre por uno o varios en el hijo, son los hijos los que portan la clave primaria del padre, como el apellido -de ahí la metáfora-, por lo que no tienen ningún sentido en la tabla primaria.

Hace poco cité en un hilo una frase que creo que me la voy a poner como firma: "Dame tu código y después de dos horas aún no sabré lo que hace tu programa. Dame tu estructura de datos y te diré si funcionará o no". Replantéate la estructura de du Base de datos entera (No sólo de esta tabla) y verás cómo todo lo demás va saliendo fácil. Si no... allá tú. Advertido estás.

En cuanto a tu "bug" te diré que no lo es, "ifcli" es el nombre con el que definiste la variable en la función ( Public function RegistrarConvenioCentroSalud( ifcli as integer... etc. etc.) El IDE te lo enseña como ayuda. Si quieres una pista... creo que el código que subiste es del módulo  RegistrarConvenioSalud en tanto que en la función llamas a RegistrarConvenioSalud2. Seguro que en el 2, se llama ifcli a secas.
En cuanto a tu código dos cosas:
1.- pones el mensaje de éxito antes de haber hecho la operación... error. Si te falla engañas al usuario.
2.- En la query no rellenas todos los campos de la tabla (recuerda que los tienes todos a not null), no creo que así pueda funcionar.
Estudia el control de errores (TRY CATCH y FINALY) y pon alguna depuración de fallos, para que veas qué pudo fallar. Revisa el libro de gambas que te puedes descargar en éste portal.

Saludos.
 



 
última edición por shordi el Miercoles, 20 Marzo 2013, 19:43; editado 2 veces 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
Pues sabes que si pensé eso lo de la base de datos, el problema es que no tuve buen profesor de la materia e hice lo que pude con lo que imagine que sabia.. pero Gracias por tus consejos de verdad es mejor cuando te lo dice un programador a alguien que intenta serlo, y pues ya estoy buscando asesoramiento de la base de datos con alguien que de verdad sabe de ello..

Nota: No quieres ser mi profesor? XD  

Gracias

Salud2
 



 
OneErick - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Al Guardar En Una Tabla Con Varios ID 
 
Tú pregunta en el foro. Si en tu pregunta se ve interés y trabajo, no dudes que siempre se te echará una mano. Mejor muchos profesores que uno solo.

Suerte.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Boton Guardar Tabla Me Borro Los Registros ivanovichenco Bases de Datos 6 Sabado, 12 Marzo 2011, 20:28 Ver último mensaje
ivanovichenco
No hay nuevos mensajes Nuevo Gambas 2.21 Y Problemas Varios soplo General 21 Miercoles, 16 Marzo 2011, 00:28 Ver último mensaje
karpaga
No hay nuevos mensajes Consulta Mysql Donde Una Tabla Tiene Vario... aratar79 Bases de Datos 21 Domingo, 30 Septiembre 2012, 21:33 Ver último mensaje
aratar79
No hay nuevos mensajes Seleccionar Varios Registros En Una Tabla. Shell General 2 Martes, 09 Octobre 2012, 11:00 Ver último mensaje
Shell
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron