![]() |
AW: INNER JOIN mit Access
SQL-Code:
Du willst ja wohl Felder abfragen und keine Tabellen, oder?
SELECT
Tabelle1, Tabelle2, Tabelle3 ... [edit] Wie ist es denn mit der "alten" Syntax, geht das?
SQL-Code:
[/edit]
SELECT
* FROM Prüfling, Abteilung, Standort WHERE Prüfling.AbteilungID = Abteilung.AbteilungID AND Prüfling.StandortID = Standort.StandortID |
AW: INNER JOIN mit Access
Zitat:
Ich möchte von allen 3 Tabellen alle Spalten Abfragen.
Delphi-Quellcode:
Ist das so richtig?
Form2.ADOQuery1.SQL.Add('SELECT Prüfling.*, Abteilung.*, Standort.* FROM (Prüfling INNER JOIN Abteilung ON Prüfling.AbteilungID = Abteilung.AbteilungID)INNER JOIN Standort ON Prüfling.StandortID = Standort.StandortID');
Delphi-Quellcode:
Oder doch lieber so?
Form2.ADOQuery1.SQL.Add('SELECT * FROM (Prüfling INNER JOIN Abteilung ON Prüfling.AbteilungID = Abteilung.AbteilungID)INNER JOIN Standort ON Prüfling.StandortID = Standort.StandortID');
|
AW: INNER JOIN mit Access
Hast Du mein Edit gesehen und ausprobiert? Bei einem INNER JOIN sollte das eigentlich unproblematisch sein.
|
AW: INNER JOIN mit Access
Jop, alles ausprobiert. Der Fehler kommt immernoch, ich tippe so langsam darauf, dass es an der Open funktion liegt. Weil ich in der Delphi Hilfe kein Open gefunden habe für die tadoquery Komponente.
|
AW: INNER JOIN mit Access
Open gibt es aber, da musst Du Dir keinen Kopf machen. Was mich etwas stört, sind die Umlaute bei "Prüfling". Ich weiß nicht, ob das nicht evtl. Probleme verursachen könnte.
|
AW: INNER JOIN mit Access
Hallo,
wenn Du die Abfrag benutzt, die Du gepostet hast, dann fehlt dort ein Leerzeichen vor dem 2. INNER JOIN. Am Open liegt es sicher nicht. Um alle Felder aus allen Tabellen anzuzeigen musst du diesen Teile nehmen:
Delphi-Quellcode:
Access ist die einzige DB, die ich kenne, bei der die JOIN-Parameter geklammert werden müssen. Die Klammerung beim o.g. Beispiel stimmt soweit.
ADOQuery1.Close();
ADOQuery.SQL.Text:= 'SELECT Prüfling.*, Abteilung.*, Standort.* FROM (Prüfling INNER JOIN Abteilung ON Prüfling.AbteilungID = Abteilung.AbteilungID) INNER JOIN Standort ON Prüfling.StandortID = Standort.StandortID'; ADOQuery.Open(); Umlaute sind in Access auch kein Problem. Sowohl in Tabellen- wie auch in Feldnamen. |
AW: INNER JOIN mit Access
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:23 Uhr. |
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