AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Firebird: Unterschied zw. mehreren Datenspalten feststellen
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird: Unterschied zw. mehreren Datenspalten feststellen

Ein Thema von Michael_Bayer · begonnen am 5. Apr 2005 · letzter Beitrag vom 5. Apr 2005
Antwort Antwort
Michael_Bayer

Registriert seit: 20. Mär 2005
137 Beiträge
 
Delphi 7 Enterprise
 
#1

Firebird: Unterschied zw. mehreren Datenspalten feststellen

  Alt 5. Apr 2005, 16:29
Hallo!
Ich möchte die ersten 2 (später auch mehrere) Zeilen einer Firebird-Datenbank-Tabelle nach Unterschieden untersuchen.
Ein Eintrag war schon da und ein anderer kam hinzu und ich möchte herausfinden, welche Felder sich unterscheiden.

*aufmal*
Delphi-Quellcode:
Spalte1 -- Spalte2 -- Spalte3
1 2 3
1 4(UNTERSCHIED!) 3
*/aufmal*

Im Prinzip kann ich alle Daten abfragen und vergleichen (wenn feld1 von datensatz1 != feld1 von datensatz2 dann Unterschied(datensatz1.feld1,datensatz2.feld1) )
aber für mich sieht das etwas umständlich aus.

Ich kann mir auch nicht vorstellen, dass es dafür spezielle Funktionen gibt, aber ich wollte nur mal fragen, ob ich da im Prinzip richtig denke oder ob es eine andere, einfachere, Methode gibt...

Gruß
Micha
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.354 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Firebird: Unterschied zw. mehreren Datenspalten feststel

  Alt 5. Apr 2005, 16:42
Ich glaube ein group by könnte da hilfreich sein.
Wenn alles gleich wäre, dürfte das Ergebnis nur eine Zeile sein. Gibt es Unterschiede, erhältst du mehrere Datensätze.
Peter
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Firebird: Unterschied zw. mehreren Datenspalten feststel

  Alt 5. Apr 2005, 17:51
Zitat von Michael_Bayer:
Ich möchte die ersten 2 (später auch mehrere) Zeilen einer Firebird-Datenbank-Tabelle nach Unterschieden untersuchen.
Firebird ist eine mengenorientierte Datenbank, und da gibt es keine ersten 2, sondern immer Ergebnismengen.

Was willst du denn anstellen bei deinem Vergleich?
  Mit Zitat antworten Zitat
Michael_Bayer

Registriert seit: 20. Mär 2005
137 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Firebird: Unterschied zw. mehreren Datenspalten feststel

  Alt 5. Apr 2005, 18:13
Im Prinzip soll das eine Art Historyfunktion werden.
Wir haben also einen bestehenden Eintrag in der Tabelle und es kommen regelmäßig ein Neuer dazu (ob jetzt immer nur 2 in der Tabelle stecken, indem der jeweils Ältere gelöscht wird, weiß ich noch nicht)

Jetzt muss man ausgeben können:
Der aktuellere Datensatz unterscheidet sich von dem vorherigen in Feld1,2,5 und 7.
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Firebird: Unterschied zw. mehreren Datenspalten feststel

  Alt 5. Apr 2005, 18:22
Zitat von Michael_Bayer:
Jetzt muss man ausgeben können:
Der aktuellere Datensatz unterscheidet sich von dem vorherigen in Feld1,2,5 und 7.
Wie bereits gesagt, es gibt keinen ersten und keinen zweiten. Die Reihenfolge, in der du die Datensätze anzeigst legst du mit order by fest... Klar ist, du brauchst einen Zusammenhang zwischen deinen Datensätzen. Dafür würde ich ein eigenes Feld hinzufügen. Gibst du beim Hinzufügen eines neuen Datensatzes auch noch ein Timestamp mit an, so kannst du mit select * from Tabelle where Kriteriumsfeld = :Kriterium order by Datum dir die Datensätze ausgeben. Danach bleibt dir wohl nichts anderes übrig, als die einzelnen Felder in Delphi miteinander zu vergleichen.
  Mit Zitat antworten Zitat
Michael_Bayer

Registriert seit: 20. Mär 2005
137 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Firebird: Unterschied zw. mehreren Datenspalten feststel

  Alt 5. Apr 2005, 18:35
Hmm - könnte ich das mit einer StoredProcedure machen?
(Wäre das sinnvoll? Man sollte ja schließlich soviel wie möglich INNERHALB dem RDBMS machen lassen)
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Firebird: Unterschied zw. mehreren Datenspalten feststel

  Alt 5. Apr 2005, 20:29
In welcher Form willst du denn schliesslich dein Ergebnis erhalten. Es wird immer auf ein Grid auslaufen
  Mit Zitat antworten Zitat
Antwort Antwort


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 18:55 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