Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Rank in der Tabelle speichern (https://www.delphipraxis.net/157521-rank-der-tabelle-speichern.html)

Uwe 111 14. Jan 2011 17:44

Datenbank: ADO • Version: ? • Zugriff über: MS SQL

Rank in der Tabelle speichern
 
Hallo

Datenbak MS SOL Version 2005 Zugriff ADO

Ich habe über die SQL-Anweisung Rank eine Pläteverteilung Pragrammiert.

Delphi-Quellcode:
  with ADOQuery do
  begin
    Close;
    SQL.Clear;
    SQL.Add('Select RANK() OVER (ORDER BY Punkte) AS Platz]');
    SQL.Add('From Auswertung ');
    SQL.Add('Where Jahr =' + JahrEdit.Text);
    Open;
  end;
Aber wie bekomme ich jetzt die Plätze gespeichert?

MfG Uwe 111

haentschman 14. Jan 2011 17:53

AW: Rank in der Tabelle speichern
 
Zitat:

Aber wie bekomme ich jetzt die Plätze gespeichert?
...das versteh ich nicht. Die Datensätze liegen nach der Abfrage im Dataset. Was willst du wohin "speichern" ?

mkinzler 14. Jan 2011 17:55

AW: Rank in der Tabelle speichern
 
Man sollte zudem Redundanzen vermeiden

Uwe 111 14. Jan 2011 18:25

AW: Rank in der Tabelle speichern
 
Hallo haentschman

Ich will das die Plätze dauerhaft in der Tabellenspalte Platz gespeichert sind, denn wenn ich das Programm verlasse sind die Plätze weg.
Und Post wird nur der erste Datensatz gespeichert.

MfG Uwe 111

mkinzler 14. Jan 2011 18:32

AW: Rank in der Tabelle speichern
 
Warum sind diese dann weg?

Uwe 111 14. Jan 2011 18:41

AW: Rank in der Tabelle speichern
 
Hallo

Beim schliessen des Programm sind die Daten weg.
Warum weis ich auch nicht.

MfG Uwe 111

mkinzler 14. Jan 2011 18:42

AW: Rank in der Tabelle speichern
 
Dann würde ich eher nach diesem Fehler suchen.

Reinhardtinho 14. Jan 2011 20:25

AW: Rank in der Tabelle speichern
 
Wenn du das Ergebnis in der Tabelle speichern willst, musst du dies auch z.B. mit einem Update-Statement tun.
Deine Anweisung ermittelt den Wert ja nur, ohne den irgendwo zu speichern.

Bernerbaer 15. Jan 2011 10:59

AW: Rank in der Tabelle speichern
 
Zitat:

Zitat von Uwe 111 (Beitrag 1074766)
Ich will das die Plätze dauerhaft in der Tabellenspalte Platz gespeichert sind, denn wenn ich das Programm verlasse sind die Plätze weg.

Dein Wunsch widerspricht datenbankspezifischer Logik. Datenbanken sollten möglichst wenige (idealerweise keine) doppelte Daten speichern (Normalisierung). Weshalb sollte man also eine zusätzliche Tabelle anlegen für Daten, die man mit einem simplen Query aus den bestehenden Daten jederzeit holen kann?

Sir Rufo 15. Jan 2011 11:15

AW: Rank in der Tabelle speichern
 
Das kann bei großen Ursprungstabellen mit vielen Berechnungen durchaus angebracht sein.
Gerade wenn sehr häufig diese Informationen abgefragt werden, sich die Ursprungswerte aber seltener ändern.

Die meisten WWS halten Statistik-Tabellen vor, wobei diese Daten auch redundant sind. Aber die Berechnung der Statistiken würden einfach zu lange dauern, somit werden diese vorgehalten (gecacht) um die Antwortzeiten zu verkürzen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:08 Uhr.
Seite 1 von 2  1 2      

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