Udostępnij za pośrednictwem


Tekst i obraz danych

Ważna informacjaWażne:

Ta funkcja zostanie usunięta z przyszłej wersji programu Microsoft SQL Server. Należy unikać stosowania tej funkcji w nowych projektach oraz zaplanować modyfikację aplikacji, w których obecnie jest używana ta funkcja.Użyj varchar(max), nvarchar(max) i varbinary(max) typy danych zamiast.Aby uzyskać więcej informacji, zobacz Duża wartość typów danych.

Microsoft SQL Server stores character strings longer than 8,000 characters and binary data longer than 8,000 bytes in special data types named text and image.Ciągi Unicode, dłużej niż 4 000 znaków są przechowywane w ntext typu danych.

Na przykład plik tekstowy duży (.txt), informacje o klientach muszą być importowane do programu SQL Server bazy danych.Dane te powinny być przechowywane jako jeden fragment danych zamiast zintegrowane z wielu kolumn tabel danych.Można utworzyć kolumna z text Typ danych dla tego celu.Jeśli jednak obecnie przechowywane jako obrazy Tagged Image File Format (TIFF) (tif), które są 10 KB logo firmy muszą być przechowywane, utworzyć kolumna z image typu danych.

W przypadku danych tekstowych, które mają być przechowywane w formacie Unicode, użyj ntext typu danych.Na przykład listu seryjnego utworzone dla klientów międzynarodowych prawdopodobnie zawiera znaki różnych języków i międzynarodowych pisowni.Przechowywać te dane w ntext kolumna.

Każdy text i ntext ma wartość danych sortowanie.Sortowanie definiować atrybuty, takie jak reguły porównywania i czułość przypadek lub accenting.Metody sortowania dla text wartości również określić strona kodowa definiuje desenie bitów używanych do reprezentowania poszczególnych znaków.Każdy ntext wartość używa strona kodowa Unicode, który jest taki sam dla wszystkich ustawień sortowania.Każda baza danych ma domyślnie sortowanie.Gdy text lub ntext kolumna jest tworzony, jest przypisany domyślny porządek sortowanie bazy danych, chyba że przypisanie określonego sortowanie przy użyciu klauzula COLLATE.Po dwóch text lub ntext Scalonej lub porównywane wartości o różnych ustawień sortowania, sortowanie pierwszeństwo reguły określają, które sortowania jest używane dla operacji.

Dane w image dane są przechowywane jako ciąg bitów i nie jest interpretowany przez SQL Server.Wszelkie interpretacji danych w image kolumna muszą być dokonywane przez aplikację.Na przykład, aplikacja może przechowywać dane w image kolumna przy użyciu formatu BMP, TIFF, GIF lub JPEG.Aplikacja odczytującego dane z image kolumna musi rozpoznać formatu danych i wyświetlić go poprawnie.Wszystkie image jest kolumna jest podanie lokalizacji przechowywania strumienia bitów, które tworzą wartość danych obrazu.

Używanie tekstu w wierszu magazynu tekst, ntext i wartości obrazu

Zazwyczaj text, ntext, lub image ciągi są duże, maksymalnie 2 GB, ciągi znaków lub binarne przechowywane poza wiersz danych.Wiersz danych zawiera tylko tekst 16-bajtowy wskaźnik wskazuje węzeł główny drzewa wbudowany wewnętrzny wskaźników, które mapują stron, w którym ciąg fragmenty są przechowywane.

Z SQL Server, można przechowywać małych średni text, ntext, i image wartości w wierszu danych, zwiększając szybkość kwerend dostęp do tych wartości.

Gdy text, ntext, lub image ciąg jest przechowywany w wierszu danych SQL Server nie ma dostępu do oddzielną strona lub zestaw stron do odczytu lub zapisu ciąg.Dzięki temu Odczyt i zapis text, ntext, lub image ciągów o tak szybka jak Odczyt lub zapis w wierszu varchar, nvarchar, lub varbinary ciągów.

Do przechowywania text, ntext, lub image włączyć ciągi w wierszu danych tekstu w wierszu opcji za pomocą sp_tableoption procedura składowana.

sp_tableoption N'MyTable', 'text in row', 'ON';

Opcjonalnie można określić maksymalny limit, od 24 do 7000 bajtów, o długości text, ntext, i image ciąg przechowywane w wierszu danych:

sp_tableoption N'MyTable', 'text in row', '1000';

Jeśli określisz "Na" zamiast konkretnego limitu domyślnie limit 256 bajtów.Wartość domyślna to zapewnia większość korzyści wydajności: Jest wystarczająco duża, aby zapewnić, że małe ciągi i wskaźniki głównego tekstu mogą być przechowywane w wierszach, ale nie tak duże zmniejszenie wierszy na strona wystarczająco, aby wpłynąć na wydajność.

Chociaż na ogół należy nie zestaw wartość poniżej 72, możesz również nie powinny zestaw zbyt wysoka, szczególnie dla tabel, gdzie większość instrukcji odwołuje się do wartości text, ntext, i image kolumny lub ma wiele text, ntext, i image kolumny.

Można również użyć sp_tableoption Aby wyłączyć opcję określając wartość opcji albo OFF lub 0:

sp_tableoption N'MyTable', 'text in row', 'OFF';