Рефераты. Работа с объектами большого объема в MS SQL и ADO

Работа с объектами большого объема в MS SQL и ADO

Работа с объектами большого объема в MS SQL и ADO

Алексей Ширшов

Введение

Эта статья появилась на свет только благодаря вашим не перестающим появляться вопросам типа: «Кто-нибудь может привести пример кода для работы с полями базы, содержащими картинки…используя ADO и Visual C++…», и тому, что мне лень на них отвечать.

Работа в MS SQL

Давайте сначала разберемся, как работать с большими объектами (LOB – large objects) на уровне базы данных. MS SQL Server поддерживает следующие типы больших объектов:

image – содержит бинарные данные переменной длины. Длина не может превышать 2 гигабайт.

text – содержит текстовые данные переменной длины в кодировке сервера (in code page of the server). Длина не может превышать 2 гигабайт.

ntext – содержит текстовые данные в Unicode-формате. Длина не может превышать 2 гигабайт.

Для хранения данных всех этих типов и низкоуровневой работы с ними SQL Server использует один и тот же механизм.

Физическое размещение больших объектов

MS SQL Server 2000 поддерживает два метода хранения больших объектов: первый метод оставлен ради совместимости со старыми версиями и не обеспечивает должной производительности в определенных случаях, по сравнению с новым методом. По умолчанию сервер работает в старом режиме.

При использовании старого метода сервер всегда размещает данные в отдельных страницах, а указатель на первую из них хранит непосредственно в строке данных.

ПРИМЕЧАНИЕ

Точнее, в строке данных хранится указатель на корень B-tree, а не на какие-либо таблицы данных. Подробнее об этом, см. следующий раздел.




2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.