![]() |
Ü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:
Habe den Aufruf auch direkt mit sql.add('select * from tableName where ' + spaltenName + ' = ' + wert) versucht, leider auch ohne Erfolg.
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; ..... Vielen Dank im Voraus Sharam [edit=sakura] [delphi]-Tags gesetzt. Mfg, sakura[/edit] |
Re: Übergabe von Spaltennamen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:29 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 by Thomas Breitkreuz