Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Übergabe von Spaltennamen (https://www.delphipraxis.net/16960-uebergabe-von-spaltennamen.html)

sharam 26. Feb 2004 11:25


Übergabe von Spaltennamen
 
Hallo,

kann man eigentlich den Spaltennamen einer Tabelle als Parameter an einer 'CASE' Anweisung übergeben.
Habe eine Funktion namens getSQLdata(..) in der eine Select-Anweisung ausgefürt werden soll.


Delphi-Quellcode:
function GetSQLData(nr : integer) : string;
begin
   case (nr) of
      001 : Result := 'select * from tableName where spaltenName = :wert';   <--- SpaltenName wird nicht erkannt! Auch nicht mit :SpaltenName
   end;
end;


Wie muß ich den spaltenNamen oben schreiben? Habe den SpaltenNamen auch bereits als ftVariant deklariert, leider ohne Erfolg. Kann das an dem Datentyp legen?


....
     with ADOQuery1 do
       begin
         try
           close;
           sql.Clear;
           sql.add(GetSQLdata(001));
           Parameters.ParamByName('spaltenName').DataType := ftstring; <--- string? 
           Parameters.ParamByName('spaltenName').Value := spaltenName;
           Parameters.ParamByName('wertn').DataType := ftstring;
           Parameters.ParamByName('wert').Value := wert;
         except
           .....
         end;
      end;
.....
Habe den Aufruf auch direkt mit sql.add('select * from tableName where ' + spaltenName + ' = ' + wert) versucht, leider auch ohne Erfolg.

Vielen Dank im Voraus

Sharam

[edit=sakura] [delphi]-Tags gesetzt. Mfg, sakura[/edit]

CenBells 26. Feb 2004 15:51

Re: Übergabe von Spaltennamen
 
Hallo,

eine Lösung zu diesem Thema gibt es im Delphi-Forum.

Gruß
Ken


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