Benutzer-Werkzeuge

Webseiten-Werkzeuge


engine:procedures:mi_inserttempdb_imagedata

mi_InsertTempdb_ImageData

Prozedur, um „umfangreicherer Binär-Daten“ in die Tabelle „tempdb.dbo.ImageData“ einfügen zu lassen.

Hintergrund :
Lange Zeit (bis zur Version 6.0.2) wurde der ASE in der Version 11 unterstützt weshalb in Form von Parametern an Prozeduren nur Daten bis zu 255 Bytes übergeben werden konnten - später (ab unterstützter Version ASE 15.0.x) bis zu 16384 Bytes. Binärdaten sind aber ja häufig wesentlich umfangreicher. Um diese übergeben zu können, wurde die Tabelle „tempdbo.dbo.ImageData“ bereitgestellt.

Anmerkungen : Seit dStore-Version 7.0.1 wird nur noch der ASE 15.7 (oder höher) unterstützt, da es ab dieser ASE-Version möglich ist, auch Daten vom Typ „image“ (Binärdaten bis zu 2 GB) an Prozeduren via Parameter zu übergeben. Von daher werden wohl nach und nach Prozeduren, die auf „tempdbo.dbo.ImageData“ zurückgreifen, einen zusätzlichen Parameter vom Typ „image“ erhalten, so daß auf lange Sicht diese Prozedur hier obsolet werden wird.

Konsequenterweise müßte die Tabelle bzw. die Prozedur „BinaryData“ bzw. mi_InsertTempdb_BinaryData heißen, aber der Name hat sich damals eben so „eingeschlichen“, weil es i.d.R. ja meistens um Bilddaten geht und weil der korrespondierende Datentyp im ASE „image“ heißt.

HTTP-MethodPOST
HTTP-AuthOptional
Tags
Engine-Kategoriemiscellaneous
Engine-TypDaten-Änderung
Letzte Aktualisierung7.0.1 (2013-08-07)

Parameter

Name 1) Standard-Wert Beschreibung 2) SQL-Datentyp3) ab Version
Data Parameter für die eigentlichen „Binärdaten“
longvarbinary6.5.2
SortNo1 Eindeutige Zahl, die als Referenz zur eindeutigen Identifizierung der Daten dient (siehe z.B. Doku von im_InsertValueBinary_Ad)
integer6.5.2
Format'image/jpeg' Hier muß das „Format“ bzw. besser der MIME-Type (daher auch der „default“-Wert) der Daten in „Data“ übergeben werden
varchar(50)6.5.2
Delete1 Gibt an, ob (evtl.) vorhandene Daten vorher gelöscht werden sollen („1“) oder nicht („0“). Es können immer nur Daten zur „spid“ („server process id“) hinterlegt werden, weswegen noch Daten von einem vorherigen Aufruf vorhanden sein könnten.
bit6.5.2

Rückgabe

Die Prozedur hat keine Rückgaben.

Output-Parameter

Die Prozedur hat keine Output-Parameter.

Mögliche Return-Codes

Code Beschreibung Quelle 4)
-500Falsche Parameternur direkt

XML-Schema

Die Rückgabe erfolgt als XML-Dokument welches gegen das Schema Response/EngineProcedure_v1_0.xsd validiert.

Historie

7.0.1 2013-08-07Datentyp des Parameters „Data“ auf „image“ umgestellt
6.5.2 2013-02-26Erstmalig in dieser Version erstellt

Code-Snippets

Es handelt sich um eine Methode zum Füllen von Schnittstellentabelle wie in Hintergrundinformationen zu Engine-Prozeduren erläutert. Die Methode kann ausschließlich per engine/execute in einem gemeinsamen Batch mit komplementären Prozeduren verwendet werden.

engine/execute

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_InsertTempdb_ImageData">
			<Parameters/>
		</Procedure>
	</Batch>
</ListOfBatches>
1)
Pflichtparameter sind unterstrichen
4)
direkt meint „von der Prozedur selber“ und indirekt meint „von intern aufgerufenen Unterprozeduren“
engine/procedures/mi_inserttempdb_imagedata.txt · Zuletzt geändert: 11.01.2016 (Externe Bearbeitung)