Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Wie kann ich tabellenübergreifende Daten einlesen? (https://www.delphipraxis.net/116878-wie-kann-ich-tabellenuebergreifende-daten-einlesen.html)

DeddyH 8. Jul 2008 15:03

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Dann mach Dir die Mühe und ersetz den Stern durch die benötigten Feldnamen, denen Du dann verschiedene Aliase zuordnen kannst.

hoika 8. Jul 2008 15:07

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Hallo,

Mühe machen ist hier auch die einzige Möglichkeit

Select Akten.*, A1.Titel As A1_Titel, A2.Titel As As_Titel

Zugriff über
FieldByName('A1_Titel').AsString
FieldByName('A2_Titel').AsString


Das Akten.* ist auch noch diskussionswürdig,
wenn nicht ale Felder benötigt werden.


Heiko

emsländer 8. Jul 2008 15:10

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Zitat:

Zitat von DeddyH
Dann mach Dir die Mühe und ersetz den Stern durch die benötigten Feldnamen, denen Du dann verschiedene Aliase zuordnen kannst.

Gern, wenn Du bitte so nett bist und mir ein kleines Beispiel gibst? Ich hab da schon anhand dessen, was ich hier im Forum gelesen habe (suche...) alles Mögliche probiert. Nur leider klappte das nie so, wie es sollte.

so brauche ich z.B. aus der
Table Akten die Felder Aktennr, SenderIP, eMail ....
Table Antragsteller1 die Felder Titel, Vornam, Name ...bla..
Table Antragsteller2 die Felder Titel, Vornam, Name ...bla..


Dank vorab und Gruss

EL

DeddyH 8. Jul 2008 15:12

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Schau mal einen Post vor Deinem ;)

emsländer 8. Jul 2008 15:13

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Zitat:

Zitat von DeddyH
Schau mal einen Post vor Deinem ;)

Wo ist da die Verknüpfung (join) ?...

Gruss

EL

DeddyH 8. Jul 2008 15:16

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Der Join hat doch mit Deinem Problem jetzt nichts zu tun :gruebel: . Aber mal ein Phantasie-Beispiel:
SQL-Code:
SELECT T1.Name AS ErsterName, T1.Vorname AS ErsterVorname, T2.Name AS ZweiterName, T2.Vorname AS ZweiterVorname
FROM Tabelle1 T1
JOIN Tabell2 T2 ON T1.ID = T2.ID
WHERE irgendwas
Nun kannst Du die einzelnen Felder gezielt über ihren Alias ansprechen.

emsländer 8. Jul 2008 15:27

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Zitat:

Zitat von DeddyH
Der Join hat doch mit Deinem Problem jetzt nichts zu tun :gruebel: . Aber mal ein Phantasie-Beispiel:
SQL-Code:
SELECT T1.Name AS ErsterName, T1.Vorname AS ErsterVorname, T2.Name AS ZweiterName, T2.Vorname AS ZweiterVorname
FROM Tabelle1 T1
JOIN Tabell2 T2 ON T1.ID = T2.ID
WHERE irgendwas
Nun kannst Du die einzelnen Felder gezielt über ihren Alias ansprechen.

jetzt wirds kompliziert:
Delphi-Quellcode:
  _stmp := 'Select Akten.*,Antragsteller1.zu_Akte as A1_zuAkte,'
          +'Antragsteller1.Titel as A1_Titel, Antragsteller1.Vorname as A1_Vorname,'
          +'Antragsteller1.Nachname as A1_Nachname, Antragsteller1.Geburtsdatum as A1_Geburtsdatum,'
          +'Antragsteller1.Strasse as A1_Strasse, Antragsteller1.Hausnr as A1_Hausnr,'
          +'Antragsteller1.PLZ as A1_PLZ, Antragsteller1.Ort as A1_Ort,'
          +'Antragsteller1.Familienstand as A1_Familienstand, Antragsteller1.Brutto as A1_Brutto '
          +'from Antragsteller1 A1 join Akten on Akten.Aktennr=Antragsteller1.zu_Akte '
          +'where Aktennr ='+ inttostr(aktennr);
Der mehrteilige Bezeichner "Antragsteller1.zu_Akte" konnte nicht gebunden werden. *grummel*

Hinzu kommt, das wenn das funzt auch noch Antragsteller2 genjoined werden muss.

Gruss

EL

DeddyH 8. Jul 2008 15:29

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Wenn Du schon einen Alias vergibst, dann nutz ihn auch :zwinker: . Und ich wäre Dir verbunden, wenn Du den reinen SQL-Code posten würdest, das ließe sich besser lesen.

[edit] Rechtschreibung [/edit]

emsländer 8. Jul 2008 15:38

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Zitat:

Zitat von DeddyH
Wenn Du schon einen Alias vergibst, dann nutz ihn auch :zwinker: . Und ich wäre Dir verbunden, wenn Du den reinen SQL-Code posten würdest, das ließe sich besser lesen.

[edit] Rechtschreibung [/edit]

:?: weder das:
Delphi-Quellcode:
from Antragsteller1 A1 join Akten on Akten.Aktennr=A1_zuAkte '
          +'where Aktennr =23';
noch das:
Delphi-Quellcode:
from Antragsteller1 A1 join Akten on Akten.Aktennr=A1.zuAkte '
          +'where Aktennr =23';
funzen

Gruss

EL

DeddyH 8. Jul 2008 15:43

Re: Wie kann ich tabellenübergreifende Daten einlesen?
 
Und so?
SQL-Code:
Select Akten.*,A1.zu_Akte as A1_zuAkte,
          A1.Titel as A1_Titel, A1.Vorname as A1_Vorname,
          A1.Nachname as A1_Nachname, A1.Geburtsdatum as A1_Geburtsdatum,
          A1.Strasse as A1_Strasse, A1.Hausnr as A1_Hausnr,
          A1.PLZ as A1_PLZ, A1.Ort as A1_Ort,
          A1.Familienstand as A1_Familienstand, A1.Brutto as A1_Brutto
from Antragsteller1 A1 join Akten on Akten.Aktennr=A1.zu_Akte
where Akten.Aktennr = 1


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:12 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz