Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Base De Datos Mysql Relacional
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Base De Datos Mysql Relacional 
 
Necesito ayuda o que me ejemplos para saber como puedo hacer para guardar datos obtenidos de un formulario, guardarlos en mi base de datos de MySQL. No se de que manera puedo hacer esto. Por los momentos lo estoy tengo trabajando guardando cada tabla por separado y asi me va bien me guarda los datos pero no me es factible porque tuve que quitarle la relación a mi base de datos. Espero que me puedan ayudar,

Tambien tengo un problemita tengo un datetime lo uso para introducir una hora que debo de guardar pero no me funciona con intervalos de horas como 11:23 solo intervalos de 30 a 30 minutos es decir me los guarda solo 11:30 11:00 .......

esto es para un proyecto

 Gracias por su ayuda ante todo
 



 
DaniellD - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Sube tu proyecto, o una parte simplificada del mismo donde se vea el problema.
Se pueden hacer las cosas de muchas formas diferentes. Si no sabemos lo que has intentado y dónde te falla, imposible ayudarte.

Saludos.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
aca esta la forma en la cual estoy usando el codigo y cada proceso guarda por separado de esta manera no puedo guardar con mi base de datos relacionado, de esta manera solo guarda con la base de datos sin relacion, les agradezco, me urge resolver esos problemas que plantee.


Public Sub Button22_Click()
If numboleta.text = "" Or fecha.Value = "" Or horam.text = "" Or nomapelli.Text = "" Or nacionalidad.Text = "" Or numcedu.Text = "" Or numtlf.text = "" Or condicion.Text = "" Or gradolic.Text = "" Or direccion.text = "" Or placaauto.Text = "" Or marcaauto.Text = "" Or modelauto.Text = "" Or tipoauto.Text = "" Or colorauto.text = "" Or yearsauto.text = "" Or placafunci.Text = "" Or nombrefuncionario.text = "" Or art169.text = "" Or art170.Text = "" Or art171.text = "" Or art174.Text = "" Or art175.text = "" Or observacion.text = "" Or lugarinf.Text = "" Or fechacompadecer.Value = "" Or hora.Text = "" Or montosancion.Text = "" Then
Message.Error("Debe llenar todos los campos obligatorios")
Else
Guardarpersonas()
Guardarauto
Guardarmulta()
GUardarinfraccion()
Guardarcita()
Cleanform()
Endif
End

  Public Sub Guardarpersonas()
Conec.conectar
Conec.query = ("INSERT INTO Personas ( nomapellido , nacionalidad, cedula, Glicencia, condicion, direccion, telefono) VALUES ('" & nomapelli.text & "','" & nacionalidad.text & "','" & numcedu.text & "','" & gradolic.text & "','" & condicion.text & "','" & direccion.text & "','" & numtlf.text & "');")
Try Conec.cn.Exec(Conec.query)
 If Error Then
  Message(Error.Text)
Message.Error("No se pudo ingresar el registro")
Message.Error(Conec.cn.Error)
Message.Info(Conec.query)
Else
 Message.Info("Se ha guardado La Multa")
Conec.$Result = Conec.cn.Exec("SELECT id_persona From Personas ORDER BY id_persona DESC LIMIT 1")
End If
Conec.desconectar
  End
  
  
 Public Sub Guardarauto()
Conec.conectar
Conec.query = ("INSERT INTO Carro ( Matricula , Marca, Modelo, Color, Tipo, year) VALUES ('" & placaauto.text & "','" & marcaauto.text & "','" & modelauto.text & "','" & tipoauto.text & "','" & yearsauto.text & "','" & colorauto.text & "');")
Try Conec.cn.Exec(Conec.query)
 If Error Then
  Message(Error.Text)
Message.Error("No se pudo ingresar el registro del auto")
Message.Error(Conec.cn.Error)
Message.Info(Conec.query)
Else
'  Message.Info("Se ha guardado los datos del auto")
Conec.$Result = Conec.cn.Exec("SELECT id_carro From Carro ORDER BY id_carro DESC LIMIT 1")
Endif
Conec.desconectar
  End
   Public Sub Guardarmulta()
Conec.conectar
Conec.query = ("INSERT INTO Multa ( numulta , fecha, placafuncionario, nomb_funcionario) VALUES ('" & numboleta.text & "','" & Format(fecha.value, "yyyy-mm-dd") & "','" & placafunci.text & "','" & nombrefuncionario.text & "');")
Try Conec.cn.Exec(Conec.query)
 If Error Then
  Message(Error.Text)
Message.Error("No se pudo ingresar el registro del multa")
Message.Error(Conec.cn.Error)
Message.Info(Conec.query)
Else
'  Message.Info("Se ha guardado los datos del multa")
Conec.$Result = Conec.cn.Exec("SELECT id_multa From Multa ORDER BY id_multa DESC LIMIT 1")
Endif
Conec.desconectar
  End
  
  Public Sub Guardarinfraccion()
Conec.conectar
Conec.query = ("INSERT INTO Infraccion ( art169 , art170, art171, art174, art175, observacion, lugar_inf) VALUES ('" & art169.text & "','" & art170.text & "','" & art171.text & "','" & art174.text & "','" & art175.text & "','" & observacion.text & "', '" & lugarinf.text & "');")
Try Conec.cn.Exec(Conec.query)
 If Error Then
  Message(Error.Text)
Message.Error("No se pudo ingresar el registro del auto")
Message.Error(Conec.cn.Error)
Message.Info(Conec.query)
Else
'  Message.Info("Se ha guardado los datos del auto")
Conec.$Result = Conec.cn.Exec("SELECT id_carro From Carro ORDER BY id_carro DESC LIMIT 1")
Endif
Conec.desconectar
  End
  
  Public Sub Guardarcita()
Conec.conectar
Conec.query = ("INSERT INTO cita ( fecha_c , hora_cita, monto) VALUES ('" & Format(fecha.value, "yyyy-mm-dd") & "','" & hora.text & "','" & montosancion.text & "');")
Try Conec.cn.Exec(Conec.query)
 If Error Then
  Message(Error.Text)
Message.Error("No se pudo ingresar el registro del cita")
Message.Error(Conec.cn.Error)
Message.Info(Conec.query)
Else
'  Message.Info("Se ha guardado los datos de la cita")
Conec.$Result = Conec.cn.Exec("SELECT id_cita From cita ORDER BY id_cita DESC LIMIT 1")
Endif
Conec.desconectar
  End

 



 
última edición por DaniellD el Jueves, 30 Junio 2016, 02:19; editado 3 veces 
DaniellD - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Hola DaniellD

Una cosita con respecto a esto!
Citar:

Conec.query = ("INSERT INTO Carro ( Matricula , Marca, Modelo, Color, Tipo, year) VALUES ('" & placaauto.text & "','" & marcaauto.text & "','" & modelauto.text & "','" & tipoauto.text & "','" & yearsauto.text & "','" & colorauto.text & "');")


Yo ahorita me encuentro haciendo un ejercicio de este tipo pero con una base de datos llamada agencia_vehiculos según la idea del modelado de la base de datos es que trates de ver que se repite en tu tabla "Carro" para evitar la redundancia de datos innecesarios por ejemplo yo noto que tienes la marca el modelo y color en una misma tabla, no se pero yo pienso que deberías de hacer otras tablas como marca aparte, modelo aparte y color en otra!, para que las llaves foráneas queden dentro de la de carro porque se puede presentar el caos en que hayan muchos carros de la misma marca o modelo y color.

A los compañeros les pregunto lo mismo no se si esta bien que si se deberia de sacar la marca, modelo y color en otras tablas y luego solo insertar las foraneas dentro de la tabla vehiculo para evitar la repeticiones de marcas, modelos y colores por supuesto que las foraneas de estas deberan repetirse en la tabla de vehiculo, pero vuelvo y pregunto es correcto hacerlo asi? gracias.
 



 
jousseph - Ver perfil del usuarioEnviar mensaje privadoVer la galería personal del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Tu código no tiene errores obvios sintácticos (otra cosa es el planteamiento que haces, pero eso es más particular de cada uno), por lo que el error no está en él.
El problema es el diseño de la base de datos o el tratamiento de las tablas que haces en el código (la sintáxis está bien, pero las consultas puede que no).

Estos son las tablas que manejas:

Personas ( nomapellido , nacionalidad, cedula, Glicencia, condicion, direccion, telefono)

Carro ( Matricula , Marca, Modelo, Color, Tipo, year)

Multa ( numulta , fecha, placafuncionario, nomb_funcionario)

Infraccion ( art169 , art170, art171, art174, art175, observacion, lugar_inf)

cita ( fecha_c , hora_cita, monto)

Definen, con mayor o menor fortuna, los elementos que manejas pero ¿dónde está la relación?)
¿Qué te relaciona la Persona, por ejemplo, con el carro?
¿Cómo sabes qué infracciones tiene un carro o una persona concreta?.
¿Cómo sabes a quién corresponde una cita?

Dices:
Citar:
guarda los datos pero no me es factible porque tuve que quitarle la relación a mi base de datos

No sé a qué te refieres con "quitarle la relación" pero lo que ahí tienes un conjunto inconexo de listas de datos que no sirven para nada...
Estamos manejando Bases de datos Relacionales. Sin relación no hay base de datos.

Trabajate la base de datos que es donde tienes el problema, no en el código de gambas.

Saludos.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Citar:
A los compañeros les pregunto lo mismo no se si esta bien que si se deberia de sacar la marca, modelo y color en otras tablas y luego solo insertar las foraneas dentro de la tabla vehiculo para evitar la repeticiones de marcas, modelos y colores por supuesto que las foraneas de estas deberan repetirse en la tabla de vehiculo, pero vuelvo y pregunto es correcto hacerlo asi? gracias.


Eso es lo correcto, Jousseph, sobre el papel. Pero no siempre lo puramente correcto es lo adecuado. Depende del objeto del proyecto que esté haciendo DanielID. Si lo que se trata es un ejercicio para clase sobre bases de datos, es una cosa, si se trata de llevar tus propias multas de tráfico (¡y las de tu mujer!), es otra y si lo que quieres es organizar una compañía de seguros o un cuartel de policía es otra muy distinta.

Todo depende del problema que se enfrente. Nunca hay que olvidar que el objeto de nuestro trabajo no es hacer bases de datos ni líneas de código, eso son las herramientas. Nuestro trabajo es solucionar problemas de la vida real y es la vida real la que marca qué es y qué no es adecuado en cada caso.

Saludos.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Citar:
Tambien tengo un problemita tengo un datetime lo uso para introducir una hora que debo de guardar pero no me funciona con intervalos de horas como 11:23 solo intervalos de 30 a 30 minutos es decir me los guarda solo 11:30 11:00 .......

Si un control no es adecuado, no lo uses.
Hace un tiempo subí uno que te permite seleccionar intervalos de cinco minutos.
Lo tienes aquí: https://foro.gambas-es.org/viewtopic.php?f=5&t=5163

Pero si tú necesitas la hora exacta, usa un maskbox o un valuebox y que el usuario teclee.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Hola Sr Shordi

Citar:
Eso es lo correcto, Jousseph, sobre el papel. Pero no siempre lo puramente correcto es lo adecuado. Depende del objeto del proyecto que esté haciendo DanielID. Si lo que se trata es un ejercicio para clase sobre bases de datos, es una cosa, si se trata de llevar tus propias multas de tráfico (¡y las de tu mujer!), es otra y si lo que quieres es organizar una compañía de seguros o un cuartel de policía es otra muy distinta.


Señor Shordi

Vamos a suponer que yo quiero hacer bases de datos profesionales y quisiera hacer las tablas así en VEHÍCULOS por ejemplo la marca del vehículo, el modelo y color en diferentes tablas, usted cree que eso es profesional? recuerdo a un compañero que me dijo que evitando tener exceso de campos en una tabla es redundancia y genera lentitud en una bd y que si tienes todo hecho con muchas tablas aparte es mucho mas eficiente y rápida la bd en las consultas, es verdad? claro siempre y cuando estas tablas estén correctamente analizadas y relacionadas.

Yo quiero tener bien claro esto para dedicarme a lo que realmente es, gracias.
 



 
jousseph - Ver perfil del usuarioEnviar mensaje privadoVer la galería personal del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Citar:
Vamos a suponer que yo quiero hacer bases de datos profesionales y quisiera hacer las tablas así en VEHÍCULOS por ejemplo la marca del vehículo, el modelo y color en diferentes tablas, usted cree que eso es profesional? recuerdo a un compañero que me dijo que evitando tener exceso de campos en una tabla es redundancia y genera lentitud en una bd y que si tienes todo hecho con muchas tablas aparte es mucho mas eficiente y rápida la bd en las consultas, es verdad? claro siempre y cuando estas tablas estén correctamente analizadas y relacionadas.

Yo quiero tener bien claro esto para dedicarme a lo que realmente es, gracias.
 


Tu compañero lleva toda la razón. La esencia de la integridad referencial es que cada dato (salvo los individuales, claro) esté perfectamente categorizado, relacionado y, por tanto, depurado. Se prima la fiabilidad sobre la sencillez (aunque una vez que comprendes cómo funciona y tienes las herramientas adecuadas, no es difícil).
Que eso sea más rápido para la BD de gestionar... bueeeno.... depende de otros factores también, sobre todo de la cantidad de registros de las tablas. Digamos que a nivel de usuario normal eso es indifirente. Para grandes desarrollos (bancos, hacienda, etc.) hay que pensar un poquito más...    

Pero, aún así, insisto en que un profesional soluciona problemas, no los crea. Por ejemplo:
Imagina que Daniel lo que quiere es llevar las multas de su familia. Salvo que su mujer sea un auténtico desastre y sus hijos hayan salido a ella, no tendrá tantos registros que guardar.
Si te pide que le hagas un programa para controlar eso y dices "se lo voy a hacer bien porque soy un Profesional". Entonces le metes:
Una tabla de

personas
relaciones personales(padre, hijo, etc)
vehículos
marcas
modelos
colores
multas
citas
pagos
modalidades de pago
plazos
agentes de tráfico

Con eso lo conviertes en un pobre infeliz:
¿Tabla de Personas? "Mi mujer y mis hijos"
¿Vehículos? "Mi Coche"
¿Marcas? "Pues eso"
¿Modelos? "Yo qué sé... ¿Tengo que comprarme el catálogo para 2016?"
¿Colores? "64 millones o así"
¿Agentes de tráfico? "¿De dónde saco eso?"

Etc. etc.
Como se dice en mi tierra "Para ese viaje no hacía falta tanta alforja". Eso no sería profesional.

El que uno sepa construir rascacielos no quiere decir que debe colocar uno cada vez que le piden una caseta para el perro...

No sé si me explico: Un profesional soluciona problemas.
 




===================
No podemos regresar
 
última edición por shordi el Sabado, 02 Julio 2016, 11:03; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Base De Datos Mysql Relacional 
 
Citar:
El que uno sepa construir rascacielos no quiere decir que debe colocar uno cada vez que le piden una caseta para el perro...


Jejeje si ya entiendo que las cosas se hacen así solo cuando realmente sea necesario.

Gracias, saludos.
 



 
jousseph - Ver perfil del usuarioEnviar mensaje privadoVer la galería personal del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Exportar Una Base De Datos Mysql Con Shell pittusa Bases de Datos 3 Miercoles, 15 Diciembre 2010, 21:45 Ver último mensaje
tururu
No hay nuevos mensajes Problema Con El Administrador De Base De D... kexxya Bases de Datos 3 Lunes, 28 Marzo 2011, 17:54 Ver último mensaje
kexxya
No hay nuevos mensajes Respaldo Base De Datos Mysql Haseo Bases de Datos 2 Lunes, 30 Enero 2012, 13:04 Ver último mensaje
tururu
No hay nuevos mensajes Ayuda Con Una Funcion De Consulta A Base D... aratar79 Bases de Datos 4 Viernes, 31 Agosto 2012, 01:53 Ver último mensaje
aratar79
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

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