Share via


Tabelle „_Storages“

Die Tabelle „_Storage“ enthält eingebettete OLE-Datenspeicher. Es handelt sich um eine temporäre Tabelle, die nur erstellt wird, wenn eine SQL-Anweisung auf sie verweist.

Spalte Typ Schlüssel Nullwerte zulässig
Name Text J N
Daten Binär (Binary) N J

 

Spalten

Name

Ein eindeutiger Schlüssel, der den Speicher identifiziert. Die maximale Länge von „Name“ ist 31 Zeichen.

Data

Die unformatierten Binärdaten.

Bemerkungen

Um einer Datenbank einen OLE-Speicher hinzuzufügen, erstellen Sie einen neuen Datensatz in der Tabelle „_Storages“, und geben Sie den Namen des Speichers in die Spalte „Name“ ein. Verwenden Sie MsiRecordSetStream, um Daten in die Spalte „Data“ dieses Datensatzes zu kopieren. Verwenden Sie zum Schluss MsiViewModify, um den Datensatz in die Tabelle „_Storages“ einzufügen.

Daten können nicht aus der Tabelle „_Storages“ gelesen werden. Die Tabelle „_Storages“ kann jedoch abgefragt werden, um zu überprüfen, ob ein bestimmter Speicher vorhanden ist. Dies bedeutet, dass es nicht möglich ist, einen OLE-Speicher von einer Datenbank in eine andere zu verschieben. Stattdessen müssen Sie die ursprüngliche Speicherdatei in die neue Datenbank importieren. Um einen OLE-Speicher zu löschen, rufen Sie den Datensatz mit den Binärdaten ab, legen Sie die Spalte „Data“ in der Tabelle „_Storages“ auf NULL fest, und aktualisieren Sie dann den Datensatz. Eine alternative Methode besteht darin, den Datensatz einfach mithilfe von MsiViewModify oder einer einfachen SQL-Abfrage zu löschen.

Zum Umbenennen eines OLE-Speichers ändern Sie die Spalte „Name“ des Datensatzes.

Wenn diese Tabelle mithilfe von SQL (ALTER TABLE

HOLD) mit HOLD versehen oder eine Spalte mit HOLD hinzugefügt wird, muss die Tabelle mit FREE freigegeben werden. Speicher werden erst geschrieben, wenn die Tabelle freigegeben oder committet wurde.