Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Parameter einer SQL-Abfrage Zeilenweise füllen ? (https://www.delphipraxis.net/109333-parameter-einer-sql-abfrage-zeilenweise-fuellen.html)

HolgerCW 28. Feb 2008 09:20

Datenbank: ORACLE • Version: 10 • Zugriff über: BDE

Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
Hallo zusammen,

wie kann ich einen Parameter in einer SQL-Abfrage ezilenweise füllen. Soll heissen, es sollen die Werte aus Spalte "X" in umgewandelter Form als Parameter in der jeweiligen Zeile einer anderen Spalte ":Y" übergeben werden ?

Welches Ereignis muss ich nehmen. So stelle ich mir das vor:

Delphi-Quellcode:

 Query1.ParamByName('lg').AsFloat := fConvertStrToDouble(Query1['LAENGENGRAD'],9);
 Query1.ParamByName('bg').AsFloat := fConvertStrToDouble(Query1['BREITENGRAD'],9);
Gruss

Holger

mkinzler 28. Feb 2008 10:00

Re: Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
Geht so nicht. Ich verstehe auch nicht ganz was du genau vorhast.

HolgerCW 28. Feb 2008 10:08

Re: Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
Ich weiss nicht wie ich in der SQL-Abfrage selber diesen Wert 7.198768441 so umgewandelt bekomme, das ich diesen in die Y-Koordinaten des DBCharts übergeben kann ? Das DBChart akzeptiert ja für X/Y nur nummerische Werte.

Ich wollte dann in Delphi den Wert 7.198768441 (VARCHAR2(16)) auslesen, dann umwandeln in 7,198768441 als float und als parameter wieder zurückschreiben.

Ich komme da nicht weiter ...

mkinzler 28. Feb 2008 10:10

Re: Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
Du könntest in der Abfrage den Dezimaltrenner ersetzen bevor du ihn castest (Beispiel von Achim im anderen Thread)

HolgerCW 28. Feb 2008 10:36

Re: Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
Hi,

also ich habe jetz in dem Programm an einer beliebigen stelle den hier gesetzt:

Delphi-Quellcode:
DecimalSeparator := ',';
... habe es einmal mit ',' und mit '.' ausprobiert. Jedesmal wenn ich dann die Query öffnen möchte kommt die Meldung: "Ungültige Zahl"

In der Query steht folgendes:

Delphi-Quellcode:
SELECT CAST(GIS.LAENGENGRAD AS FLOAT) AS LG1, CAST(GIS.BREITENGRAD AS FLOAT) AS BG1 FROM ...
Mache ich da noch was falsch ?

Gruss

Holger

mkinzler 28. Feb 2008 10:42

Re: Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
SQL-Code:
SELECT CAST( TRANSLATE( GIS.LAENGENGRAD, '.', ',') AS FLOAT) ...

HolgerCW 28. Feb 2008 10:55

Re: Parameter einer SQL-Abfrage Zeilenweise füllen ?
 
ES KLAPPT .... JUHUUUU !!!!

Danke ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:58 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