Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Relaciones??? (https://www.clubdelphi.com/foros/showthread.php?t=38344)

gandalf_27 12-12-2006 04:30:54

Relaciones???
 
Buenas...Soy nuevo en este tema de base de datos... Y necesito realizar algo "muy sencillo"; necesito crear dos tablas...Donde en una gurdo los datos clientes...y en la otra guardo los datos de autos...
Y se que cada cliente puede tener muchos autos... Y se que existe una relacion 1:muchos..por que algo lei...Pero cuales son los datos que tengo que incluir en cada tabla para realizar esta relacion, y como se realizaria esta relacion...entre las tablas...; Algo de ayuda, orientacion... por favor..
Sin mucho mas...Espro me ayuden...Desde ya, muchas gracias

Paoti 12-12-2006 05:06:46

uy gandalf, es muy ampia tu pregunta, espero sea inpependiente de la base de datos.


pues mira:


puedes hacer esto:


tabla clientes:


id_cliente (tiene que ser primary key, llave primaria, unica)
nombre
direccion
telefono


tabla autos
id_auto (unica, primary key)
id_cliente (aqui es la relacion con el cliente, debes de indicar uno que ya existe en tu catalogo de cliente)
modelo
marca
kilometraje
anio



y ya, tienes tu relacion maestro detalle.



tambien es conveniente que vayas a la biblioeteca de una universidad, o libreria cercana y te compres un libro de bases de datos, basicas, si quieres una de access para que veas como funconan las tablas relacionales, o busca la cara oculta de delphi 4 que sirve mucho, hasta hoy es vigente y te describe que son las tablas relacionales.

y lo mejor como puedes hacerlo desde delphi.

www.marteens.com

ahi lo encuentras

gandalf_27 12-12-2006 06:45:38

Muchas Gracias...
 
Ey, desde ya muchas gracias.. y si...hay que leeeeer....; yo como trabajo con Builder; descargaue el libro de Ian Marteens "Cara Oculta de Builder C++"; y esta muy completo...pero el problema mio es basico, por que el no entender relaciones del principio, no me permite entender las combinacione que se pueden lograr...
Por que por ejemplo...xon ese ejemplo que me diste vos...creo que me sirve, por que es algo parecdo lo que yo necesito...pero una vez en Builder o Delphi (yo trabajo con builder), la idea es que si la persona tiene mas de un auto, ingrese a otra pantalla y valla completando con la informacion de cada auto...Por lo tanto, el cliete Nro. 1 tendria 3 autos...con sus respectivas caracteristicas...el cliente nro. 2 tendria 1 auto, el cliente nro. 3 con 5 autos, etc...Es algo asi...??????
O ando muy perdido??????????Bueno, no pretendo que me contestes, ya que con lo de recien estuvo muy bueno, pero si lo podes hacer...Te lo agradecere...Hasta luego

Lepe 12-12-2006 15:34:15

Exactamente en eso consiste la relación 1:N (uno a muchos).

en la tabla autos tendrás repetido el código de cliente tantas veces como autos tenga. Si el cliente 3 tiene 3 autos la tabla autos debe estar así:
Código:

id_auto    id_cliente  marca
  1              3            Renault
  4              3            Opel
  25            3            Seat

Verás que el id_auto no es correlativo en este ejemplo, simplemente quiere decir que otros autos en medio que no pertenecen al cliente 3

Obtener un listado de los autos del id_cliente 3 sería así:
Código SQL [-]
select modelo,marca, kilometraje, anio
from autos 
where id_cliente = 3
Dale una visual al TQuery, (que seguro habla en la cara oculta).

Saludos

Paoti 12-12-2006 17:03:19

realmente con lo que te dice Lepe, aunado a lo que comento y leyendote un poco la cara aculta, puedes realizar lo que pretendes.


de nada sirve que te lo hagamos, cosa que nunca veras aqui en clubdelphi. (bueno hay exepciones)


lee gandalf, los de la cara oculta sirven, si estas bien en ingles metete a delphi.about <--- busca en google, hay hay tutoriales que explican como hcaer lo que tu quieres y muchas cosas basicas.


La franja horaria es GMT +2. Ahora son las 15:51:17.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi