Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Bases de datos > Firebird e Interbase
Register FAQ Members List Calendar Guía de estilo Today's Posts

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 20/04/2013
NISOTO NISOTO is offline
Miembro
NULL
 
Join Date: Apr 2012
Location: RIOHACHA - LA GUAJIRA
Posts: 27
Poder: 0
NISOTO Va por buen camino
Consulta con 3 tablas

Hola a todos.

Quiero que por favor me expliquen esto: Poseo 3 tablas en Firebird y delphi 2007

Alumnos
cod_alumno *
cod_curso
nombre
apellidos
año
...

salones
cod_curso *
materia1
ihs1
docente1
....

calificaciones
cod_curso *
cod_alumno *
año *
materia1
docente1
nota1p_mat1
logro1p_mat1
ausencia1_mat1
...

ahora bien lo que deseo es una consulta, en un dbgrid que muestre lo siguiente

cod_alumno, cod_curso, nombre, apellidos, año, cod_curso, materia1, docente1, nota1p_mat1, logro1p_mat1, ausencia1_mat1

espero me colaboren, lo necesito urgentemente.
Reply With Quote
  #2  
Old 21/04/2013
Casimiro Noteví's Avatar
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Join Date: Sep 2004
Location: En algún lugar.
Posts: 32,702
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Bienvenido a clubdelphi, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración
Reply With Quote
  #3  
Old 21/04/2013
ginkaku's Avatar
ginkaku ginkaku is offline
Miembro
NULL
 
Join Date: Nov 2012
Posts: 59
Poder: 14
ginkaku Va por buen camino
Hola amigo. Con la mejor 'onda' te sugiero leer un libro sobre sql urgente, conceptos sobre consultas, clausulas y normalizacion,etc, hacen falta. En fin como dijiste que necesitabas que t expliquen:
En una base de datos(bien hecha) las tablas estan unidas gracias a sus llaves primarias y foraneas. Se navega desde una tabla A a tabla B y luego a la tabla C:
Código SQL [-]
select A.cod_alumno,S.cod_curso,A.nombre,(y todo lo demas)
from Alumnos A,Salones S, Calificaciones C
where A.cod_alumno=C.cod_alumno 
and C.cod_curso=S.cod_curso
Reply With Quote
  #4  
Old 23/04/2013
NISOTO NISOTO is offline
Miembro
NULL
 
Join Date: Apr 2012
Location: RIOHACHA - LA GUAJIRA
Posts: 27
Poder: 0
NISOTO Va por buen camino
Hola ginkaku

Me sacaste de un gran enrredo que tenia.

Te lo agradezco mucho...
Reply With Quote
  #5  
Old 14/05/2013
bulc's Avatar
bulc bulc is offline
Miembro
 
Join Date: Jun 2010
Posts: 416
Poder: 17
bulc Va por buen camino
Clave primaria y clave foránea

La clave primaria no es un índice, aunque funciona como si lo fuera.
Es el campo de dato único que identifica la tabla. Debe ser no nulo por eso mismo.
Suele usarse el prefijo ID_NombreTablaAbreviado por ejemplo: ID_MAT (Ïndentificador de materias), ID_ESPE (Identificativo de la especie). También se llama clave principal de esa tabla.
Para clave primaria se usa un dato numérico autoincrementado o uno varchar con cifras string.
Luego para enlazar esa tabla madre con otra hija (de detalle) se una la clave foránea. Llamada foránea porque usa la clave primaria de otra tabla forastera.
Por ejemplo si haces una base de datos de animales por especies de animales, puedes tener una tabla de ESPECIES, otra de FAMILIAS y otra de ORDENES.
Cada registro de especie se relaciona con una FAMILIA, pero por cada familia hay una, varias o muchas especies.
Para relacionarlas la tabla de especies ESPECIES (además del campo ID_ESP) llevará un campo con el dato ID_FAMILIA, que también estará en la tabla FAMILIAS.
De esta manera al poner el cursor de un DBGrid en un registro con un ID_FAMILIA, señalará en otro DBGrid, el registro de la tabla FAMILIa a la q el animal pertenece.
Esto se consigue relacionando las clave secundaria de una tabla con primaria o principal de otra.
No se deben confundir las claves primaria y foránea con los índices. (Autorepaso)
Reply With Quote
  #6  
Old 14/05/2013
Casimiro Noteví's Avatar
Casimiro Noteví Casimiro Noteví is online now
Merodeador
 
Join Date: Sep 2004
Location: En algún lugar.
Posts: 32,702
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Quote:
Originally Posted by bulc View Post
La clave primaria no es un índice
Bueno, la clave primaria siempre es un índice, otra cosa distinta es que tengas además otros índices.
Reply With Quote
  #7  
Old 14/05/2013
ozsWizzard's Avatar
ozsWizzard ozsWizzard is offline
Miembro
 
Join Date: May 2004
Location: Murcia
Posts: 190
Poder: 23
ozsWizzard Va por buen camino
O que la clave primaria, no solamente es un indice, pero entre todas las cosas que es una clave primaria, una de ellas es indice. O sea, que sí es un indice, por muy "especial" que sea.
__________________
La Madurez se llama...
~~~Gaia~~~
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Consulta Tablas - DB othaheguy Varios 16 13/04/2010 13:25
Consulta a 2 Tablas oscarac SQL 2 02/04/2009 18:00
consulta de dos tablas. digital SQL 4 06/11/2007 20:41
Consulta SQL con dos tablas... emeceuy Conexión con bases de datos 2 06/08/2005 07:41
consulta de dos tablas tgsistemas SQL 4 15/04/2005 13:25


All times are GMT +2. The time now is 10:20.


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