Hallo!

> Der komplette String ist wie folgt:
>
> SELECT Produkt.*, Angebotstag.*, Produktkategorie.*, Bestellung.*
> FROM (Produktkategorie INNER JOIN (Produkt INNER JOIN Angebotstag ON
> Produkt.ProduktID = Angebotstag.TagProduktID) ON
> Produktkategorie.KategorieID = Produkt.ProduktKategorie) LEFT JOIN
> Bestellung ON Produkt.ProduktID = Bestellung.BestellProduktID;
>
> Bitte �bersehe, da� ich von den ganzen Tabellen alle Datens�tze abrufe
(*).
> Ist im Moment nur Entwurf und werde es dann noch eingr�nzen.

;-)

Allerdings wei� ich wegen der "*" nicht, was Du wirklich selektieren
willst.

> Ich erhalte den Fehler "Fehlender Operator in Abfrageausdruck".
> Habe es auch ohne der Where Klausel versucht .... selber Fehler....
>
> Das SQL hat mir im prinzip Access so zusammengebaut. Ich habe nur das
inner
> Join in Left Join ge�ndert.
>
> In der Doku hei�t es ja "schlie�t alle aus der Linken Tabell ein, auch
wenn
> keine �bereinstimmung besteht.
> Wenn ich also LEFT JOIN Bestellung ..... schreibe dann ist ja
Bestellung die
> Linke oder?

Bei "FROM Produkt LEFT JOIN Bestellung ON ..." steht Produkt links und
Bestellung rechts. Links/Rechts bezieht sich auf die JOIN-Klausel,
unabh�ngig davon, wie die Tabellen in "ON" verkn�pft werden.

Aufgrund Deiner JOIN-Struktur kann ADO die Haupttabelle nicht eindeutig
identifizieren. Deshalb wird auch ein UPDATE oder INSERT wahrscheinlich
nicht funktionieren. Entweder gibst Du die Haupttabelle �ber die
Property "UNIQUE TABLE") an, oder suchst nach einer Alternative. UPDATE
und INSERT von Verkn�pfungen sind n�mlich eine Wissenschaft f�r sich:

Solange es eine Haupttabelle gibt und die verkn�pften Tabellen nur einen
Datensatz liefern (z. B. Fremdschl�sseltabellen) gibt es keine Probleme.

Wenn Du aber einen Datensatz in der Haupttabelle hast, dem mehrere
Datens�tze in der Untertabelle zugeordnet wird, musst Du schon ganz
genau sagen, ob Du nur die Haupttabelle, oder die Haupttabelle und alle
Unterdatens�tze oder die Haupttabelle und einen Datensatz der
Untertabelle modifizieren willst. Dabei "hilft" Dir dann die "UNIQUE
TABLE"-Property.

Bei Deinem Recordset ist so nicht klar, ob Du die Produkte, die
Produktgruppe oder die Bestellung modifizieren willst. Freundlicherweise
bekommst Du also eine Fehlermeldung und keine unerw�nschten
Modifikationen. ;-)

Vielleicht ist es einfacher, wenn Du das mit einem hierarchischen
Recordset l�st oder einige JOINs durch Sub-SELECTs ersetzt.

Freundliche Gr��e
Joachim van de Bruck




| [aspdedatabase] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdedatabase/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdedatabase.asp

Antwort per Email an