call db procedure a with ResultSet [[param &1 = c], d,e, f,g,h,i], [column of ResultSet j = 1], default k,l dbAlias = b
Gruppe |
Führt einen Stored Procedure Aufruf (SQL-Befehl) a auf der Datenbank aus, die durch den Alias b repräsentiert wird. Im Statement hinterlegte Platzhalter der Form &Parameternummer werden durch die Werte ab Parameter c bis i ersetzt. Zeichen, die für eine gültige Syntax des Statements erforderlich sind (z.B. Hochkommas um Zeichenketten) müssen bereits im Statement enthalten sein. Die Menge an selektierten Ergebniszeilen wird automatisch auf 1 beschränkt.
Liefert die Datenbank eine Ergebniszeile zurück, ist der Rückgabewert der Funktion der Wert der Spalte mit der Nummer j . Ansonsten wird k zurückgegeben.
Sind in der Ergebnismenge Spalten vom Typ BLOB, wird über den Parameter l festgelegt, ob die Binärdaten Base64-kodiert in die Ergebnislisten geschrieben werden sollen oder nicht. Ist l gleich true, wird Base64-kodiert, ansonsten bleiben die Daten unverändert. Gibt es keine solchen Spalten in der Ergebnismenge, hat der Wert des Parameters keinen Effekt.
Parameterbeschreibung
Parameter |
Beschreibung |
a |
SQL-Statement. |
b |
Datenbank-Alias. |
c |
Eingabe Parameter &1. |
d |
Eingabe Parameter &2. |
e |
Eingabe Parameter &3. |
f |
Eingabe Parameter &4. |
g |
Eingabe Parameter &5. |
h |
Eingabe Parameter &6. |
i |
Eingabe Parameter &7. |
j |
Gibt an welche Spalte des Resultsets zurück gegeben werden soll. Offset ist 1. |
k |
Default-Wert (falls kein Ergebnis zurück gegeben wird). |
l |
Inhalt von Blob-Spalten Base64-kodieren (true, false). |
Beispiele
Gegeben sei eine Stored Procedure GetAllProfiles(suchbegriff), welche Profil-ID und Profilname anhand eines Suchbegriffs als Resultset zurück gibt. Dabei wird immer die erste Zeile des Resultsets verwendet.
Parameter a |
CALL GetAllProfiles("&1") |
CALL GetAllProfiles("&1") |
CALL GetAllProfiles("&1") |
Parameter b |
testdb |
testdb |
testdb |
Parameter c |
demoprofil |
demoprofil |
demoprofil |
Parameter d…i |
|
|
|
Parameter j |
2 |
1 |
1 |
Parameter k |
error |
error |
error |
Ergebnis |
DemoProfil |
6872263c:12fd93fea8f:-37a4.1feefd6229b797f1:6872263c:12fd93fea8f:-7ff8 |
error |
Hinweis: Die Beispiele oben gelten für den Aufruf in einer MySQL-Datenbank. Falls die Stored Procedure unter MSSQL definiert wurde, verwenden Sie bitte die Syntax {CALL GetAllProfiles("&1")} (also das SQL-Statement in geschweifte Klammern setzen). Für andere Datenbanken entnehmen Sie die korrekte Syntax bitte der Dokumentation des jeweiligen Herstellers.
Siehe auch
select-statement a [[param &1 = c], d,e, f,g,h,i,j], default k,l dbAlias = b
exists db-row(select-statement a [[param &1 = c], d,e,f,g,h,i,j])
select into map(a,b,[param &1 = c], d,e, f,g,h,i,j], delimiter k, map l, m)
set-vars(select a, dbalias b, [c,d,e,f,g,h,i,j for params &1...&8][,k,l,m,n])
update-statement a [[param &1 = c], d,e, f,g,h,i,j], dbAlias = b