tabela _Streams
Tabela _Streams zawiera listę osadzonych strumieni danych OLE. Jest to tabela tymczasowa, utworzona tylko w przypadku odwołania do instrukcji SQL.
Kolumna | Typ | Klucz | Nullable |
---|---|---|---|
Nazwa | tekstu | Y | N |
Dane | binarne | N | Y |
Kolumny
-
nazwa
-
Unikatowy klucz identyfikujący strumień. Maksymalna długość nazwy to 62 znaki.
-
dane
-
Niesformatowane dane binarne.
Uwagi
Aby skopiować strumień danych OLE (na przykład obiekt binary typu danych) z pliku do bazy danych, utwórz rekord w tabeli _Streams i wprowadź nazwę strumienia danych w kolumnie Nazwa tego rekordu i skopiuj dane z pliku do kolumny Dane przy użyciu MsiRecordSetStream. Użyj MsiViewModify, aby wstawić nowy rekord do tabeli.
Aby odczytać binarny strumień danych osadzony w bazie danych, użyj zapytania SQL, aby znaleźć i pobrać rekord zawierający dane binarne. Użyj MsiRecordReadStream, aby odczytać dane binarne do buforu.
Aby przenieść strumień danych binarnych z jednej bazy danych do innej, najpierw wyeksportuj dane do pliku. Użyj zapytania SQL, aby znaleźć strumień danych w pliku i użyć MsiRecordSetStream, aby skopiować dane z pliku do kolumny Dane w tabeli _Streams drugiej bazy danych. Dzięki temu każda baza danych ma własną kopię danych binarnych. Nie można przenieść danych binarnych z jednej bazy danych do innej, pobierając rekord z danymi z pierwszej bazy danych i wstawiając je do drugiej bazy danych.
Aby usunąć strumień danych, pobierz rekord i ustaw kolumnę Data na wartość null przed zaktualizowaniem rekordu. Inną metodą jest usunięcie rekordu z tabeli, usunięcie go przy użyciu MsiViewModify lub zwykłego zapytania SQL. Strumień nie powinien być pobierany do rekordu, jeśli strumień zostanie usunięty z tabeli.
Aby zmienić nazwę strumienia danych OLE, zaktualizuj kolumnę "Name" rekordu.
Jeśli blokada zostanie umieszczona w tej tabeli przy użyciu języka SQL (ALTER TABLE)
HOLD) lub kolumna jest dodawana z funkcją HOLD. Tabela musi zostać zwolniona przy użyciu opcji BEZPŁATNA. Strumienie nie są zapisywane, dopóki tabela nie zostanie zwolniona lub zatwierdzona.