![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: DML
Select aus String in DML
Gibt es eine Möglichkeit, innerhalb eines select einen Subselect durchzuführen,
dessen SQL-Kommando als String zum Zeitpunkt der Abfrage gebildet wird. Beispiel: Tabelle1 hat folgende Spalten tmpID: integer tmpTabelle: char(31) tmpSpalte: char(31) nun möchte ich folgende Abfrage erzeugen (Metacode):
Code:
Das ganze ist natürlich z.B. im Delphi als CommandText-String erzeugbar und kann dann an die DB
select
(select x.<y.tmpSpalte> from <y.tmpTabelle> x where x.id = y.tmpID) from Tabelle1 y gesendet werden. Aber ich möchte wenn möglich diese Art Abruf z.B. in einer stored procedure verwenden. Ich hoffe, ich konnte meine Frage einigermaßen klar formulieren. Danke für Tips. |
AW: Select aus String in DML
hmm, direkt als SQL-Statement wird das wohl nichts.
Aber mit SP bist Du schon auf dem richtigen Weg, selecte Dir darin Dein Statement zusammen und führe es dann über EXECUTE STATEMENT aus. Hope it helps |
AW: Select aus String in DML
Zu Laufzeit generierte Statements kann man wie folgt absetzen:
SQL-Code:
execute block
returns (erg <Typ>) as declare variable _id integer; declare variable _t char(31); declare variable _s char(31); begin for select id, tmpTabelle, tmpSpalte from <tabelley> into :_i, :_t, :_s do begin execute statement 'select ' || :s || ' from ' || :t || ' where id = ' || :_id || ';' into :erg; suspend; end; end; |
AW: Select aus String in DML
@mkinzler
klasse - genau das habe ich gesucht. Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:53 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