AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi INNER JOIN mit Access
Thema durchsuchen
Ansicht
Themen-Optionen

INNER JOIN mit Access

Ein Thema von Kevin11 · begonnen am 30. Sep 2011 · letzter Beitrag vom 4. Okt 2011
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#21

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 08:28
SQL-Code:
SELECT
  Tabelle1, Tabelle2, Tabelle3
...
Du willst ja wohl Felder abfragen und keine Tabellen, oder?

[edit] Wie ist es denn mit der "alten" Syntax, geht das?
SQL-Code:
SELECT
  *
FROM
  Prüfling, Abteilung, Standort
WHERE
  Prüfling.AbteilungID = Abteilung.AbteilungID
AND
  Prüfling.StandortID = Standort.StandortID
[/edit]
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen

Geändert von DeddyH ( 4. Okt 2011 um 08:31 Uhr)
  Mit Zitat antworten Zitat
Kevin11

Registriert seit: 11. Aug 2011
113 Beiträge
 
Delphi XE Professional
 
#22

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 08:31
SQL-Code:
SELECT
  Tabelle1, Tabelle2, Tabelle3
...
Du willst ja wohl Felder abfragen und keine Tabellen, oder?
Ja, will ich! Das ganze Accesszeug macht mich jetzt schon wieder ganz kirre.

Ich möchte von allen 3 Tabellen alle Spalten Abfragen.

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'); Ist das so richtig?

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'); Oder doch lieber so?
"Wer mit künstlicher Intelligenz arbeitet, muß auch mit natürlicher Dummheit rechnen." (Klaus Kornwachs)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#23

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 08:33
Hast Du mein Edit gesehen und ausprobiert? Bei einem INNER JOIN sollte das eigentlich unproblematisch sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Kevin11

Registriert seit: 11. Aug 2011
113 Beiträge
 
Delphi XE Professional
 
#24

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 08:39
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.
"Wer mit künstlicher Intelligenz arbeitet, muß auch mit natürlicher Dummheit rechnen." (Klaus Kornwachs)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#25

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 08:46
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.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#26

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 08:50
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:
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();
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.

Umlaute sind in Access auch kein Problem. Sowohl in Tabellen- wie auch in Feldnamen.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: INNER JOIN mit Access

  Alt 4. Okt 2011, 12:19
Zitat:
Umlaute sind in Access auch kein Problem. Sowohl in Tabellen- wie auch in Feldnamen.
Für die meisten DBMS aber, deshalb würde ich darauf verzichten
Markus Kinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz