AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Unterschiedliches Verhalten einer Abfrage unter Access / ADO

Unterschiedliches Verhalten einer Abfrage unter Access / ADO

Ein Thema von hirnstroem · begonnen am 16. Jan 2008 · letzter Beitrag vom 16. Jan 2008
Antwort Antwort
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#1

Unterschiedliches Verhalten einer Abfrage unter Access / ADO

  Alt 16. Jan 2008, 10:24
Datenbank: Access • Version: kA • Zugriff über: ADO
'loha Folks,

wird untenstehende Abfrage direkt in Access ausgeführt, so wird jeder Datensatz, welcher für die Felder 'BuildingIDShutter1' und 'BuildingIDShutter2' einen anderen Wert als Null enthält, doppelt angezeigt respektive jeder Datensatz mit einem Wert in 'BuildingIDShutter1' oder 'BuildingIDShutter2' wird einzeln aufgelistet, was auch meine Absicht ist.

Führe ich dieselbe Abfrage in meiner Applikation über ADO aus, so wird mir jeweils nur ein Datensatz angezeigt, wo eigentlich zwei sein müssten und ich finde nicht heraus weshalb dies so ist.

Gibt es unter Umständen eine Option, welche, wenn aktiviert, solch doppelte Datensätze herausfiltert oder etwas in dieser Art?

Anbei noch die Abfrage:

SQL-Code:
SELECT *, BuildingIDShutter1 as ShutterBuilding
FROM
(Room INNER JOIN
(Floor INNER JOIN
(DeviceType INNER JOIN
(Building INNER JOIN
(Application INNER JOIN Device ON [Application].[ApplicationID] =[Device].[ApplicationID])
ON [Building].[BuildingID] =[Device].[BuildingIDShutter1])
ON [DeviceType].[DeviceTypeID] =[Device].[DeviceTypeID])
ON [Floor].[FloorID] =[Device].[FloorIDShutter1])
ON [Room].[RoomID] =[Device].[RoomIDShutter1])
WHERE
DeviceType LIKE :DeviceType
AND
Application LIKE :Application
AND
Building LIKE :Building
AND
Floor LIKE :Floor
AND
Room LIKE :Room
AND
Active = True
AND
BuildingIDShutter1 <> NULL
ORDER BY Building ASC, Floor ASC, Room ASC, Description ASC;

UNION ALL

SELECT *, BuildingIDShutter2 as ShutterBuilding
FROM
(Room INNER JOIN
(Floor INNER JOIN
(DeviceType INNER JOIN
(Building INNER JOIN
(Application INNER JOIN Device ON [Application].[ApplicationID] =[Device].[ApplicationID])
ON [Building].[BuildingID] =[Device].[BuildingIDShutter2])
ON [DeviceType].[DeviceTypeID] =[Device].[DeviceTypeID])
ON [Floor].[FloorID] =[Device].[FloorIDShutter2])
ON [Room].[RoomID] =[Device].[RoomIDShutter2])
WHERE
DeviceType LIKE :DeviceType
AND
Application LIKE :Application
AND
Building LIKE :Building
AND
Floor LIKE :Floor
AND
Room LIKE :Room
AND
Active = True
AND
BuildingIDShutter2 <> NULL
ORDER BY Building ASC, Floor ASC, Room ASC, Description ASC;
Grüsse
hirnstroem
inde deus abest
  Mit Zitat antworten Zitat
hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Unterschiedliches Verhalten einer Abfrage unter Access /

  Alt 16. Jan 2008, 14:27
Die Sache hat sich erübrigt.

Es ist so, dass ein mehrfaches Vorkommen eines Parameters in Access kein Problem darstellt, über ADO hingegen keine grosse Beachtung findet. Wird ein Parameter mehrmals in der Abfrage verwendet, so muss dieser anscheinend jeweils einen anderen Namen als all die andern haben.

Grüsse
hirnstroem
inde deus abest
  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 07:41 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