Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   sql-Funktion Zähler (https://www.delphipraxis.net/154690-sql-funktion-zaehler.html)

khh 21. Sep 2010 14:37

Datenbank: firebird • Version: 2.1 • Zugriff über: zeos

sql-Funktion Zähler
 
hallo zusammen,
gibts ne sql-Funktion die die DS einer Query quasi "durchnummeriert".
Hintergrund ist der Kundenwunsch die Sätze im DB-Grid zu nummerieren.

Gruss KHH

omata 21. Sep 2010 14:45

AW: sql-Funktion Zähler
 
Lege dir doch in der Query ein "Neues Feld" (berechnet) an und erzeuge den Zählerstand dann im OnCalc-Ereignis.

BlackbirdBerlin 21. Sep 2010 14:56

AW: sql-Funktion Zähler
 
Hi KKH,

in Oracle gibt es die Pseudo-Spalte ROWNUM, die man mitselektieren kann, für genau solche Zwecke. Eventuell bietet FB so etwas auch.

HTH, Tim

khh 21. Sep 2010 14:58

AW: sql-Funktion Zähler
 
Zitat:

Zitat von BlackbirdBerlin (Beitrag 1050988)
Hi KKH,

in Oracle gibt es die Pseudo-Spalte ROWNUM, die man mitselektieren kann, für genau solche Zwecke. Eventuell bietet FB so etwas auch.

HTH, Tim

kennt FB leider nicht,
vieleicht heists da ja anders ?

mkinzler 21. Sep 2010 15:02

AW: sql-Funktion Zähler
 
Kennt FB nicht. Soetwas würde ich auch lokal machen oder eine SP schreiben, welche das einfügt

BlackbirdBerlin 21. Sep 2010 15:03

AW: sql-Funktion Zähler
 
Zitat:

Zitat von khh (Beitrag 1050990)
Zitat:

Zitat von BlackbirdBerlin (Beitrag 1050988)
...in Oracle gibt es die Pseudo-Spalte ROWNUM...

kennt FB leider nicht,
vieleicht heists da ja anders ?

Ich kann mir vorstellen, dass da die FB-Hilfe hilfreich sein könnte...

VG, Tim

khh 21. Sep 2010 15:08

AW: sql-Funktion Zähler
 
Zitat:

Zitat von mkinzler (Beitrag 1050994)
Kennt FB nicht. Soetwas würde ich auch lokal machen oder eine SP schreiben, welche das einfügt

wäre ja zu einfach gewesen ;-)

DelphiBandit 21. Sep 2010 15:36

AW: sql-Funktion Zähler
 
Aber geht doch irgendwie - gefunden in den Firebird-FAQs

Habe es gerade für eine 2.1 Datenbank im Dialect 3 ausprobiert, funktioniert wunderprima. In dem Beispiel ist es der Einfachheit halber mit einer Systemtabelle gemacht, da sind garantiert Daten verfügbar. Wichtig ist es das Ganze in eine Transaktion zu kapseln, sonst läuft die Variable weiter und weiter. Also nach Ausführung z.B. im IBExpert commit oder rollback.

Innerhalb von kompilierten StoredProcedures gibt des die ROW_COUNT Funktion. Aber das wäre zu einfach, wenn es die auch in einem einfachen SQL-Statement gäbe.

khh 21. Sep 2010 16:24

AW: sql-Funktion Zähler
 
Zitat:

Zitat von DelphiBandit (Beitrag 1051007)
Aber geht doch irgendwie - gefunden in den Firebird-FAQs

Habe es gerade für eine 2.1 Datenbank im Dialect 3 ausprobiert, funktioniert wunderprima. In dem Beispiel ist es der Einfachheit halber mit einer Systemtabelle gemacht, da sind garantiert Daten verfügbar. Wichtig ist es das Ganze in eine Transaktion zu kapseln, sonst läuft die Variable weiter und weiter. Also nach Ausführung z.B. im IBExpert commit oder rollback.

Innerhalb von kompilierten StoredProcedures gibt des die ROW_COUNT Funktion. Aber das wäre zu einfach, wenn es die auch in einem einfachen SQL-Statement gäbe.

danke, werd ich mir zu Gemüte führen :-)

p80286 21. Sep 2010 16:35

AW: sql-Funktion Zähler
 
Betr. ROWNUM

Wenn ich mich richtig erinnere steht ROWNUM nur in SQL+ zur verfügung!?

Gruß
K-H

BlackbirdBerlin 21. Sep 2010 17:02

AW: sql-Funktion Zähler
 
Zitat:

Zitat von p80286 (Beitrag 1051024)
Betr. ROWNUM
Wenn ich mich richtig erinnere steht ROWNUM nur in SQL+ zur verfügung!?
Gruß
K-H

Nope, auch in reinen SQL-Queries, die an Oracle abgesetzt werden.

Grüße, Tim

khh 22. Sep 2010 06:36

AW: sql-Funktion Zähler
 
Zitat:

Zitat von BlackbirdBerlin (Beitrag 1051039)
Zitat:

Zitat von p80286 (Beitrag 1051024)
Betr. ROWNUM
Wenn ich mich richtig erinnere steht ROWNUM nur in SQL+ zur verfügung!?
Gruß
K-H

Nope, auch in reinen SQL-Queries, die an Oracle abgesetzt werden.

Grüße, Tim

hilft aber nixbei ner firebird DB :-(

BlackbirdBerlin 22. Sep 2010 06:57

AW: sql-Funktion Zähler
 
Zitat:

Zitat von khh (Beitrag 1051132)
Zitat:

Zitat von BlackbirdBerlin (Beitrag 1051039)
Zitat:

Zitat von p80286 (Beitrag 1051024)
Betr. ROWNUM
Wenn ich mich richtig erinnere steht ROWNUM nur in SQL+ zur verfügung!?
Gruß
K-H

Nope, auch in reinen SQL-Queries, die an Oracle abgesetzt werden.

hilft aber nixbei ner firebird DB :-(

Hehe... nee, das stimmt. Leider.

Grüße, Tim

mkinzler 22. Sep 2010 06:57

AW: sql-Funktion Zähler
 
Kann man sich aber leicht selber bauen

khh 22. Sep 2010 07:55

AW: sql-Funktion Zähler
 
Zitat:

Zitat von mkinzler (Beitrag 1051137)
Kann man sich aber leicht selber bauen

hast da ein Beispiel dafür?

Danke Gruss KHH

DeddyH 22. Sep 2010 08:11

AW: sql-Funktion Zähler
 
Ich denke, Du suchst so etwas: http://www.delphipraxis.net/152327-r...ermitteln.html

khh 23. Sep 2010 10:28

AW: sql-Funktion Zähler
 
Zitat:

Zitat von DeddyH (Beitrag 1051154)

werd ich mir mal anschauen

danke dir


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz