Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SetRange und SQL (https://www.delphipraxis.net/54385-setrange-und-sql.html)

TheSaint 4. Okt 2005 13:51

Re: SetRange und SQL
 
Hallo!

Mit dem between Operator habe ich schon einige Test gefahren und dieser scheint nicht geeignet zu sein. Dein letztes Beispiel würde zwar mit dieser Tabelle funktionieren:

Col1 Col2
----------
1 0
2 1

Mit der hier aber nicht mehr:
Col1 Col2
----------
1 1
2 0

Wie ich schon erwähnt habe, liegt es wohl an der Sortierung. Eine Umsetzung mit SQL ist wohl nicht so einfach möglich. :(

marabu 4. Okt 2005 16:46

Re: SetRange und SQL
 
Meine Erinnerung war vielleicht doch nicht so falsch. Ich habe einer Eingebung folgend das Handbuch zu ObjectPAL Version 7 konsultiert und den Beleg für meine Erinnerung gefunden:

Zitat:

Zitat von Borland
setRange

Beschreibung: setRange definiert Bedingungen zur Auswahl zusammenhängender Datensätze ... Sie können auch einen Bereich definieren, der auf mehreren Feldern beruht. Dazu definieren Sie eine exakte Übereinstimmung außer für das letzte Element in der Liste.

Das von dir beobachtete Phänomen, bei dem du je nach Wertfolge in Spalte 2 mal einen, mal zwei Sätze als Ergebnis von SetRange erhältst, beruht auf einem falschen Umgang mit dieser Methode. Während das Ergebnis eines SQL-Statements wohl definiert ist, musst du bei Methoden der BDE spezielle Randbedingungen beachten.

Grundsätzlich solltest du dich nicht von einem Wechsel zu einem SQL Server abhalten lassen. Du kannst mit SQL jedes gewünschte Ergebnis produzieren - das garantiert alleine die implementierte Relationen-Algebra. Die von mir angegebenen SQL statements produzieren das Ergebnis, welches ich haben wollte. Das inkonsistente Ergebnis von SetRange kann kein Maßstab für die Leistungsfähigkeit von SQL sein.

marabu


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:16 Uhr.
Seite 2 von 2     12   

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