_Storages Tabelle
In der tabelle _Storages werden eingebettete OLE-Datenspeicher aufgelistet. Dies ist eine temporäre Tabelle, die nur erstellt wird, wenn von einer SQL-Anweisung verwiesen wird.
Spalte | Art | Schlüssel | Nullable |
---|---|---|---|
Name | Y | N | |
Daten | Binäre | N | Y |
Spalten
-
Name
-
Ein eindeutiger Schlüssel, der den Speicher identifiziert. Die maximale Länge von Name beträgt 31 Zeichen.
-
Daten
-
Die unformatierten Binärdaten.
Bemerkungen
Wenn Sie einer Datenbank einen OLE-Speicher hinzufügen möchten, erstellen Sie einen neuen Datensatz in der _Storages Tabelle, und geben Sie den Namen des Speichers in die Spalte "Name" ein. Verwenden Sie MsiRecordSetStream-, um Daten in die Datenspalte dieses Datensatzes zu kopieren. Verwenden Sie schließlich MsiViewModify-, um den Datensatz in die _Storages Tabelle einzufügen.
Daten können nicht aus der _Storages Tabelle gelesen werden. Die _Storages Tabelle kann jedoch abgefragt werden, um nach dem Vorhandensein eines bestimmten Speichers zu suchen. Dies bedeutet, dass es nicht möglich ist, einen OLE-Speicher aus einer Datenbank in eine andere zu verschieben. Sie müssen stattdessen die ursprüngliche Speicherdatei in die neue Datenbank importieren. Um einen OLE-Speicher zu löschen, rufen Sie den Datensatz ab, der die Binärdaten enthält, legen Sie die Datenspalte in der _Storages Tabelle auf NULL fest, und aktualisieren Sie dann den Datensatz. Eine alternative Methode besteht darin, den Datensatz einfach mit MsiViewModify oder einer einfachen SQL-Abfrage zu löschen.
Um einen OLE-Speicher umzubenennen, aktualisieren Sie die Spalte "Name" des Datensatzes.
Wenn in dieser Tabelle ein Haltezeichen mit SQL (ALTER TABLE) platziert wird
HOLD) oder eine Spalte mit HOLD hinzugefügt wird, muss die Tabelle mit FREE freigegeben werden. Speicher werden erst geschrieben, wenn die Tabelle freigegeben oder zugesichert wurde.