AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Outer Join in Microsoft.Jet.OLEDB via ADO

Outer Join in Microsoft.Jet.OLEDB via ADO

Ein Thema von Bitworm · begonnen am 12. Jan 2005 · letzter Beitrag vom 12. Jan 2005
Antwort Antwort
Benutzerbild von Bitworm
Bitworm

Registriert seit: 28. Jun 2004
Ort: Bockhorn
90 Beiträge
 
Delphi 11 Alexandria
 
#1

Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 00:01
Hi !

Ich habe eine mdb via o.g. Connection angesteuert und alles funktioniert toll. Da ich bisher mehr Erfahrungen im Bereich Oracle machen konnte, macht mir der outer join Probleme. Folgende Query will nicht
select TOP 25 fahrzeuge.* , standorte.* from fahrzeuge, standorte where standorte.OID *= fahrzeuge.StandortOID order by LetzterStatusZeitpunkt desc Unter Oracle reicht es, ein (+) hinter das entsprechende Feld zu schreiben, aber irgendwie kriege ich das hier nicht hin. Lt. Tante Google sollte das mit dem *= klappen, geht aber nicht. Hat da jemand einen Rat für mich ?
Rolf Heinen
Bye und bis denne

Bitworm
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#2

Re: Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 00:58
Das (+) ist ein left bzw. right Join, wobei du es für jedes Feld einzeln defnieren kannst.
(Im Gegensatz zu diesem ollen JOIN-Kinder-SQL )
Wenn ich mich nicht irre versteht Jet OUTER JOINS (halt dieses neue Kinder-SQL )

Edit: Bullshit! Ich verwende diese Syntax nie, deshalb dachte ich ein OUTER JOIN soll einer Art "!=" entsprechen.
So sollte es gehen:
SQL-Code:
SELECT TOP 25
       Fahrzeuge.*
      ,Standorte.*
FROM Fahrzeuge LEFT JOIN Standorte
         ON Fahrzeuge.StandortOID = Standorte.OID

Nicht jede DB kann einen so hübschen, schnörkellosen SQL-Dialekt sprechen.
SQL-Code:
SELECT Fahrzeuge.*
      ,Standorte.*
FROM Fahrzeuge
      ,Standorte
WHERE Fahrzeuge.StandortOID = Standorte.OID(+) and
       RowNum <= 25
  Mit Zitat antworten Zitat
Benutzerbild von Bitworm
Bitworm

Registriert seit: 28. Jun 2004
Ort: Bockhorn
90 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 01:15
@Robert_G

Funktioniert einwandfrei dank Deiner Hilfe Thanx ! Anscheinend muss ich auf viele angenehmen und vertrauten Oracle-Spezialitäten verzichten
Rolf Heinen
Bye und bis denne

Bitworm
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 01:32
Den Schritt zu Jet kapiere ich aber wirklich nicht.
Wenn Oracle zu teuer ist, bekommt man für 1500€ die Multi User Lizenz für Caché. (ist btw ein verflucht flinkes Ding )
Wenn es nix kosten soll gibt es immer noch PostGreSQL und FireBird.
PosGreSQL's pg/SQL sieht sogar fast wie Oracle's PL/SQL aus.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 08:21
Wenn Du mehr mit Oracle und Delphi machen willst, so vergiss ADO/OLE DB.

Besorg dir lieber native Zugriffskomponenten (z. B. von Core Labs). Damit hast Du 100% die Features die Oracle bietet auch über die DB-Schnittstelle. Den ADO-Treiber von M$ für Oracle kann man nur als Machbarkeitsstudie betrachten als für ernsthafte Anwendungsentwicklung. Und ob Oracle noch vernünftige neue ADO-Treiber liefert ist auch mehr als fraglich.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Bitworm
Bitworm

Registriert seit: 28. Jun 2004
Ort: Bockhorn
90 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 08:55
Danke für die guten Tipps, aber das mit Oracle ist ein anderer Kunde und ein gaaaanz anderes Projekt mit ganz anderen Dimensionen. ADO / Jet ist unter Einbeziehung aller Kriterien und Anforderungen als die für dieses Projekt und für den Kunden beste Lösung ausgewählt worden, wobei vorher natürlich die auf dem Markt verfügbaren Alternativen in die Überlegungen mit einbezogen wurden.
Übrigens verwende ich für die Oracleanwendung die Komponenten Direct Oracle Access von Allround Automations. In Verbindung mit dem PL/SQL-Developer des gleichen Anbieters ist dieses Gespann meiner Meinung nach die Beste Alternative für einen Oraclezugriff.
Rolf Heinen
Bye und bis denne

Bitworm
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Outer Join in Microsoft.Jet.OLEDB via ADO

  Alt 12. Jan 2005, 09:03
Zitat von Bitworm:
Jet ist unter Einbeziehung aller Kriterien und Anforderungen als die für dieses Projekt und für den Kunden beste Lösung
Dann spricht ja nichts dagegen. Es gibt jedoch einige Entwickler die eigentlich immer eine bestimmmte DB verwenden/vorschlagen, ohne sich um die Rahmenbedingungen Gedanken zu machen.

Zitat von Bitworm:
Übrigens verwende ich für die Oracleanwendung die Komponenten Direct Oracle Access von Allround Automations. In Verbindung mit dem PL/SQL-Developer des gleichen Anbieters ist dieses Gespann meiner Meinung nach die Beste Alternative für einen Oraclezugriff.
Verwende ich selbst auch - kann aber nicht jedesmal alle Alternativen aufzählen
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 08:21 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