Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola y perdonen que insista en esto pero sigo sin ver la necesidad de usar las tres tablas por lo siguiente:
La primera solo almacena los grupos.
La segunda almacena los alumnos con sus grupos
La tercera almacena las materias ligadas al alumno.
Pero si insisten en usar las tres tablas pues asi:
Usando un simple Combobox y un dbgrid:
Este Query trabaja con el combobox que trae Id_Gpo_Carr de la famosa primera tabla y lo inserta en el:
Código Delphi [-]
QTemp.SQL.Text := 'Select Id_Gpo_Carr  From GPO_CARR';
   QTemp.Active := True;
   While not QTemp.Eof do
   begin
      CBALUMNOS.Items.Add(QTemp.Fields[0].Text);
      QTemp.Next;
   end;
   QTemp.Active := False;
QTemp es el nombre que le di al query.
CBALUMNOS es el nombre que le di al combobox.

En otro query ligado al dbgrid se pone esto:
Código Delphi [-]
QTemp2.SQL.Text := 'SELECT *  FROM ALUMNOS RIGHT JOIN CALIFICACIONES ON ALUMNOS.Id_Gpo_Carr = '+CBALUMNOS.Text+'';
 QTemp.Active := True;
QTemp2 es el nombre que le di al segundo query.
Este vera lo que este en el combobox que se llama CBALUMNOS y filtrara los alumnos que cumplan con ese requisito.
Creo que se puede con un combobox y con sql como veras CONY es cuestion de un poco de paciencia.
Espero te sirva
Saludos
Responder Con Cita
  #2  
Antiguo 11-10-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
Su insistencia en las tres tablas, es que las primeras dos son, vamos a decirlo así, de referencia... la que en realidad va a editar es la de CALIFICACIONES, pero para esto debe saber cual es el grupo y cuales son los alumnos...


Saludos...
Responder Con Cita
  #3  
Antiguo 11-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Estoy de acuerdo Maeyanes pero si te fijas en los campos de las tablas en su primera pregunta veras que el campo Id_Gpo_Carr esta en la tabla alumnos tambien, esto quiere decir que hay un enlace entre estas tablas por este campo en particular, estaras de acuerdo con migo que es muy dificil interpretar dudas con pocos datos, casualmente caben las dudas, al ver esto por eso opine lo dicho (tres tablas para que??).
Saludos Maestro
Responder Con Cita
  #4  
Antiguo 11-10-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
Te repito, las 3 tablas son necesarias... si tienes una relación así:

Código:
[GPO_CARR] <-- Id_Gpo_Carr --> [ALUMNOS] <-- Matricula --> [CALIFICACIONES]
Y quieres hacer lo que pide CONY, que es capturar las calificaciones de los alumnos de un solo grupo, como lo harías con 2 tablas?

Ahora, viendo tu ejemplo, el join que propones no es posible, ya que la tabla CALIFICACIONES no tiene el campo Id_Gpo_Carr. La sintaxis de un join es:

Código SQL [-]
select * from tabla1 join tabla2 on tabla1.campo = tabla2.campo

Si bien, tu intención es buena, esa consulta no puede ser editable, que es lo que busca CONY...

Analizalo bien y verás...



Saludos...
Responder Con Cita
  #5  
Antiguo 11-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola Maeyanes
La prove tal cual antes de darsela, la diferencia esta en los nombres de las tablas ya que use tres tablas mias, incluso lo prove con dos como dije, ligadas, nada mas cambie los nombres para que CONY se ubicara, la prove en una pequeña aplicacion y ya, pero de que sirve, sirve.
La verdad no creo que mi ordenador sea diferente de otros, ahunque a este le tengo advertido, si no funciona lo cambio.
Saludos Maestro, que ya ves me as ayudado a aprender.
Saludos
Responder Con Cita
  #6  
Antiguo 11-10-2006
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 26
maeyanes Va por buen camino
Sirve bien? Pudiste editar el resultado de la consulta join?

Ahora, puede que el error que tuviste sea al momento de cambiar los nombres de tus tablas a los que usa CONY...


Saludos...
Responder Con Cita
  #7  
Antiguo 11-10-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Siempre cave la duda revise en mi programa, el de verdad a ver si tengo algo parecido y efectivamente hay similitudes.
De todos modos concuerdo contigo que tal vez al poner los nombres me alla perdido en algo.
Verdaderamente agradezco tus comentarios, ya que creo que asi la interesada CONY podra tener un campo mas amplio de apreciacion y que por suerte hay en este foro Maestros como tu que nos dan unas buenas lecciones, aqui sigo aprendiendo.
Saludos y garcias Maestro
Por cierto que paso con aladelta ?, Hizo un comentario y se fue, que paso!!!???
Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Apertura de Varias Tablas luxus Conexión con bases de datos 5 08-09-2005 13:37:34
Trabajar con varias tablas luxus Conexión con bases de datos 3 22-08-2005 18:32:15
usar una tabla o varias auxiliares???leer y opinar por favor ercrizeporta Conexión con bases de datos 3 14-07-2005 14:55:20
Insertar en varias tablas... Duc SQL 5 01-09-2004 06:07:28
IBDataSet con varias tablas Angel Firebird e Interbase 8 26-01-2004 14:30:03


La franja horaria es GMT +2. Ahora son las 00:22:13.


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