Informix: Wie übergeben, verwenden Sie und führen Sie mehrere Werte in einer einzelnen parameter einer gespeicherten Prozedur

Wie Kann ich das übergeben mehrerer Werte in einem einzelnen parameter einer gespeicherten Prozedur in Informix?.

Dies ist eine häufige Frage, aber ich habe gesehen noyhing über informix.

Fand ich eine post, aber es ist nicht für mich arbeiten, sollten die version der DB, oder bin ich etwas fehlt?

Ich versuche das ausführen einer WHERE X IN (SELECT Y FROM TABLE(PARAM))

Edit:

Dies ist ein Beispiel von, was ich versuche zu tun.

CREATE PROCEDURE test_hector
(
    C LIST( SET (CHAR(10) NOT NULL ) NOT NULL)
)
RETURNING CHAR(10) AS C, CHAR(10) AS CVE, CHAR(50) AS DESC;

DEFINE vColumna like tclaves.columna;
DEFINE vClave like tclaves.clave;
DEFINE vdescve like tclaves.descve;

FOREACH
select columna, clave, descve
INTO vColumna, vClave,vdescve
from tclaves
where columna in (SELECT * FROM TABLE(C))
RETURN vColumna, vClave,vdescve WITH RESUME;
END FOREACH
END PROCEDURE;

Ich versuche, es auszuführen, aber ich glaube, ich bin mit Syntax-Probleme

EXECUTE PROCEDURE test_hector( '{stspols,stsrepo}');

Bin ich immer die Fehlermeldung [Informix][Informix ODBC Driver][Informix]Invalid collection literal value.

Ich ausgeführt diese Funktion execute function se_release() erhalten Sie die informix-version dies ist, was ich habe.

column1
Spatial DataBlade Release 8.21.FC4R1 (Build 238)                 Compiled on Thu Aug 26 19:42:55 CDT 2010 with:                      IBM Informix Dynamic Server Version 10.00.FC7                    glslib-4.00.UC10

Ich bin mit Aqua Data Studio 8.0.22 zu erstellen, und führen Sie die Prozedur. Runinng auf Windows 7 Ultimate 32-Bits

Vielen Dank im Voraus. Für jede Hilfe

InformationsquelleAutor Mr. | 2012-05-30

Schreibe einen Kommentar