Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

BLOB-Tabellen

BLOB-Tabellen erzeugen Sie mit der Anweisung CREATE TABLE OF BLOB. Sie dienen als Speicherort von BLOB-Objekten. SESAM/SQL behandelt BLOB-Tabellen grundsätzlich wie andere SQL-Tabellen. Sie werden als „normale“ Basistabellen in den Informationsschemata angezeigt. Bei View- und Indexdefinitionen bestehen keine Unterschiede zu anderen SQL-Tabellen.

Die BLOB-Werte des BLOB-Objekts werden mit Aufrufen des SESAM-CLI stückweise in mehreren Zeilen der Tabelle gespeichert. SESAM/SQL verwendet dabei eine Stückgröße von 31000 Byte. Diese Größe nutzt die Bandbreite bei der Übertragung des BLOB-Werts zwischen SQL-Client und SQL-Server optimal aus.

SESAM/SQL legt die Struktur der BLOB-Tabelle bei ihrer Erzeugung fest. Eine Spaltendefinition durch den Anwender ist deshalb an dieser Stelle nicht möglich.

Eine BLOB-Tabelle besitzt die folgenden Spalten:

  • Die Spalte OBJ_NR ist vom Datentyp INTEGER und enthält die laufende Nummer des BLOB-Objekts innerhalb der Tabelle.

  • Die Spalte SLICE_NR ist vom Datentyp INTEGER und enthält die laufende Nummer des Teilstücks des BLOB-Werts.

  • Die Spalte SLICE_VAL ist vom Typ VARCHAR(31000). Sie enthält jeweils die Teilstücke des BLOB-Werts. Die Einträge ab der Teilstücknummer 1 enthalten den Wert in 31000 Byte großen Teilstücken. Das letzte Teilstück kann natürlich kleiner sein. In der Zeile mit der Teilstücknummer 0 sind Verwaltungsinformationen für das BLOB-Objekt gespeichert. Die Voreinstellungen für diese Spalte sind die in der OF BLOB-Klausel vom Anwender definierten Attribute wie MIME und USAGE. Zusätzlich enthalten die Voreinstellungen die Attribute CREATED und UPDATED. Diese Attribute geben Auskunft über das Entstehungs- und letzte Änderungsdatum des BLOB-Objekts.

  • Die Spalte OBJ_REF ist vom Typ CHAR(237). Bei Teilstücknummer 0 enthält diese Spalte den REF-Wert des BLOB-Objekts. Bei allen anderen Teilstücken ist der Spaltenwert NULL. Als Voreinstellung erhält die Spalte den REF-Wert der Klasse dieser Tabelle. Die Spalte ist mit der Bedingung UNIQUE definiert.

Die Spalten OBJ_NR und SLICE_NR bilden den Primärschlüssel einer BLOB-Tabelle. Für diese Primärschlüsselbedingung vergibt SESAM/SQL hier wie üblich intern generierte Nummern, die im selben Schema nicht mehr genutzt werden können.

Es ist möglich, weitere Spalten mit ALTER TABLE anzufügen. Mit ALTER TABLE können Sie auch BLOB-Tabellen ändern. Diese Änderungen können jedoch dazu führen, dass die BLOB-Tabelle nicht mehr durch CLI-Aufrufe angesprochen werden kann, da die CLI-Aufrufe an die von SESAM/SQL vorgegebene Struktur angepasst sind.

BLOB-Tabellen können mit DROP TABLE gelöscht werden. Dieser Aufruf löscht auch alle enthaltenen BLOB-Objekte.