Udostępnij za pośrednictwem


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.