SQL Variable Select-Spalte in Stored Procedure

furryhamster

Lt. Commander
Registriert
Okt. 2008
Beiträge
1.098
Hi,

ich schreibe eine Stored Procedure (Informix Datenbank) und möchte dieser über einen Parameter die Tabelle die selektiert werden soll übergeben.

Den Übergabeparameter habe ich mit varchar(20) deklariert. Gebe ich jetzt die variable direkt in das Select an (Select test, variablenname from ...), so erhalte ich beim Ausführen einen Character to numeric number error.
Packe ich das Select in IF-Bedingungen erhalte ich ein Syntax error
Beispiel:
Code:
IF (variablenname = 'spaltenname')
FOREARCH v_cursor FOR
  Select dies, das from test
ELIF (variablenname = 'spaltenname2')
  Select dies, jenes from test
END IF;

Hat einer ne Idee wie ich das umsetzen kann oder was ich falsch mache?
 
Hi,

ich kenne jetzt die Informix Datenbank nicht, aber bei MS SQL müssen alle Variablen immer mit @ anfangen.

Code:
Set @Variablenamen = '123'

If (@Variable = 'Spaltennamen')
usw.
 
Zurück
Oben