PL/SQL impliziter cursor

Hallo zusammen,

eigentlich habe ich eine recht einfache Frage.
Ich möchte in einem impliziten cursor das SELECT durch eine WHERE-Bedingung einschränken. Diese Bedingung möchte ich mir vorher erst zusammenbauen.

if (data_source_only is not null) then
only_condition := ’ WHERE datasource = ‚‘’ || data_source_only || ‚‘’’;
end if;

FOR lcursor IN (SELECT * FROM DQA_CHECK_DEFINITION || only_condition)

Allerdings bekomme ich immer die Fehlermeldung, dass das statement nicht korrekt abgeschlossen ist.
Ist diese Vorgehensweise überhaupt möglich?

Vielen Dank für Eure Hilfe!
Philipp

Hallo,

wenn es mit diesem Konstrukt geht, muss es so aussehen:

if (data_source_only is not null) then
only_condition := ’ WHERE datasource = ’ || data_source_only || ‚;‘;
else
only_condition := ‚;‘;
end if;

Gruß

Hob