Liefert die Parameter einer SQL-Funktion inkl. Informationen über den Datentyp zurück - optional auch nur für
einen bestimmten Parameter.
Im Gegensatz zu do_GetSQLFunctionParameters_Ad werden zwar keine Default-Werte zurückgegeben und auch keine Angabe, ob es sich um einen Ausgabeparameter handelt oder nicht, aber dafür ist dieses Ergebnis „verläßlich“, d.h. die Angaben kommen aus den System-Tabellen der Datenbank selbst, so daß Fehler (wie in der Dokumentation) AUSGESCHLOSSEN sind.
HTTP-Method | GET |
HTTP-Auth | Optional |
Tags | |
Engine-Kategorie | miscellaneous |
Engine-Typ | Daten-Ermittlung |
Letzte Aktualisierung | 6.0.4 (2011-10-21) |
Name 1) | Standard-Wert | Beschreibung 2) | SQL-Datentyp3) | ab Version |
---|---|---|---|---|
SQLFunctionName | Name einer SQL-Funktion, zu der die Parameter ermittelt werden sollen | varchar(50) | 6.0.4 | |
ParameterName | NULL | Name eines Parameters der SQL-Funktion „SQLFunctionName“. Falls angegeben, wird nur der Datensatz zu diesem Parameter ausgegeben. | varchar(50) | 6.0.4 |
Spaltenname | Beschreibung | SQL-Datentyp4) | ab Version |
---|---|---|---|
SortNo5) | Wird nicht ausgegeben, sondern nur zur Sortierung verwendet ! Bestimmt die Reihenfolge des Parameters „ParameterName“ innerhalb aller Parameter der SQL-Funktion „SQLFunctionName“. | tinyint | 6.0.4 |
ParameterName | Name eines Parameters der SQL-Funktion „SQLFunctionName“. Hinweis : Es gibt immer einen „Parameter“ mit dem festen Namen „Return Type“, was den Rückgabewert der Funktion darstellt. | varchar(50) | 6.0.4 |
Datatype | Daten-Typ des Parameters „ParameterName“ | varchar(20) | 6.0.4 |
Length | Wieviel Byte können Werte, die für den Parameter „ParameterName“ übergeben werden, maximal enthalten. Bei vielen Daten-Typen ist die Speicherbelegung immer so groß wie dieser Wert (bei numerischen Daten-Typen z.B.). | integer | 6.0.4 |
PrecisionValue | Gilt nur für einige numerische Daten-Typen (z.B. „decimal“) und gibt die maximale Anzahl Stellen an, die ein Wert für den Parameter „ParameterName“ enthalten kann | tinyint | 6.0.4 |
Scale | Gilt nur für einige numerische Daten-Typen (z.B. „decimal“) und gibt die Genauigkeit, sprich die maximale Anzahl an Nachkomma-Stellen an, die ein Wert für den Parameter „ParameterName“ enthalten kann | tinyint | 6.0.4 |
(parameterunabängige Sortierung)
Die Prozedur hat keine Output-Parameter.
Code | Beschreibung | Quelle 6) |
---|---|---|
-500 | Falsche Parameter | nur direkt |
Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.
6.0.4 | 2011-10-21 | Erstmalig in dieser Version erstellt |
Der folgende Link öffnet in einem separaten Fenster den Engine Playground der fest mit dem dbap-demo System verbunden ist:
Unformatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetSQLFunctionParameters?SQLFunctionName=<value>'
Mit xmllint 7) formatierte Ausgabe:
curl -X GET 'http://<partner>-<project>.dstore.de/default/engine/mi_GetSQLFunctionParameters?SQLFunctionName=<value>' | xmllint --format -
use dStore_php\WebService; $service = new WebService\Service( WebService\Scheme::HTTP,'<partner>-<project>.dstore.de', 80); $request = new WebService\Requests\Engine\Procedure\Request( new WebService\Requests\AccessData('default'), 'mi_GetSQLFunctionParameters', array( 'SQLFunctionName' => '<value>', // 'ParameterName' => NULL ) ); $service->execute($request); $xml_result = $request->getResponse()->getBody()->toSimpleXmlDocument(); $ResultSet = $xml_result->getRowsAsArray();
XML zur Ausführung mit der Methode engine/execute, z.B. per
curl --header 'Content-Type: application/xml' -X POST 'http://<partner>-<kunde>.dstore.de/default/engine/execute' -d '<xml-daten>'
<?xml version="1.0" encoding="UTF-8"?> <ListOfBatches> <Batch No="0"> <Procedure Name="mi_GetSQLFunctionParameters"> <Parameters> <Parameter Name="SQLFunctionName"><!-- varchar value --></Parameter> <!-- <Parameter Name="ParameterName">NULL</Parameter> --> </Parameters> </Procedure> </Batch> </ListOfBatches>