Avatar billede fagghunter Nybegynder
07. december 2006 - 00:17 Der er 8 kommentarer

SQL samt Grid

Ey!

Jeg har et problem med at få nogle data'er hentet ned i en Grid! Her  er en detaljeret gennemgang:

Jeg har 3 tabeller, Medlemmer, DeltagerI og Tunering!

Medlemmer: (tabel over medlemmer i en skakklub)
----------------------------------------
| MedlemsID* | Fornavn | Efternavn | osv.
----------------------------------------

DeltagerI: (Mange til mange tabel)
----------------------------------------
| MedlemsID* | TuneringsID* 
----------------------------------------

Tunering: (tabel over skaktuneringer)
----------------------------------------
| TuneringsID* | Navn | Sted | Dato
----------------------------------------

Det første jeg har gjort er at jeg har lavet en master/detail mellem Tunering og DeltagerI. Jeg vil sådanset have en liste med tuneringer, så når man markerer en så viser den hvem der deltager i den tuneringen i anden liste! Dog kan jeg ikke få andet end MedlemsID og TuneringsID frem i detail Grid'en (altså det jeg startede med). Jeg har brugt følgende SQL kode  til at prøve mig frem:

SELECT * FROM Medlemmer, DeltagerI
WHERE DeltagerI.TuneringsID =:"TuneringsID"
AND DeltagerI.MedlemsID = Medlemmer.MedlemsID

Jeg får ikke en fejl når jeg bruger kode... Jeg håber I kan hjælpe mig, og jeg takker på forhånd!
Avatar billede kroning Nybegynder
07. december 2006 - 09:29 #1
Måske dette (utestet)

SELECT * FROM DeltagerI
LEFT JOIN Medlemmer ON MedlemsID=DeltagerI.MedlemsID
WHERE DeltagerI.TuneringsID=:"TuneringsID"
Avatar billede kroning Nybegynder
07. december 2006 - 09:31 #2
Rettelse:

SELECT * FROM DeltagerI
LEFT JOIN Medlemmer ON Medlemmer.MedlemsID=DeltagerI.MedlemsID
WHERE DeltagerI.TuneringsID=:"TuneringsID"
Avatar billede fagghunter Nybegynder
07. december 2006 - 15:24 #3
Det virker ikke helt! Jeg får ingen fejl, og der kommer heller ingen extra felter i min detail..

Måske har jeg forklaret forkert, men jeg vil have at i Grids'ne (master/detail) så bliver det sådan her:
Master(Tunering):
----------------------------------------
| TuneringsID | Navn | Sted | Dato
----------------------------------------
........2.....|.Kbh..|.Kbh..|.25-10-2007

Detail(Deltagere: blanding af deltager/medlemmer)
----------------------------------------------------------------
|TuneringsID | MedlemsID | Fornavn | Efternavn | Adresse | osv.
----------------------------------------------------------------
........2....|.....5.....|.Jesper..| Jensen....| Stengade..osv.
----------------------------------------------------------------
Avatar billede kroning Nybegynder
07. december 2006 - 15:58 #4
Hvilken DB bruger du? Det resultat set du får retur efter SQL´en er det tomt? Måske er det forbindelsen over til dit grid det er galt med.
Har du ikke et andet program der kan forbinde til DB´en hvor i du kan prøve køre SQL´en?
Avatar billede fagghunter Nybegynder
07. december 2006 - 16:11 #5
Jeg bruger Paradox 5, jeg har datalogi på gymnasiet, så andet kan jeg ikke bruge. Altså sådan kan man ikke kalde den tom for den viser de samme ting som før, altså MedlemsID og TuneringsID i felterne (ligesom tabelen DeltagerI i mit spørgsmål)
Avatar billede kroning Nybegynder
07. december 2006 - 16:33 #6
Jeg har lige testet JOIN på paradox 7 tabeller og det virker fint sammen med BDE. Nu er det nogle år siden jeg droppede TDBGrid og alle andre DB komponenter så jeg er lidt rusten i det, men måske er der andre der har nogle gode ideer.
Avatar billede fagghunter Nybegynder
07. december 2006 - 17:04 #7
Tak alligevel for hjælpen, ja TDBGrid er skod, dog må kan vi ikke bruge andet end det vi har lært, og det her giver ingen mening :)
Avatar billede kroning Nybegynder
07. december 2006 - 17:44 #8
Har i ikke lært at bruge TListView, den satte jeg ind i stedet for TDBGrid dengang jeg lavede mine programmer om til ikke længere at benytte DB komponenter.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester