История, обзор возможностей, взаимодействие SQL Server с другими серверными компонентами
История
SQL Server 1.0 впервые увидел свет в 1989 году. Это было совместное детище фирм Microsoft и Sybase, первой из которых необходим был свой сервер SQL для тогда ещё активно продвигаемой OS/2, а другой - возможность быстрого выхода на растущий рынок ПК, куда уже устремились конкуренты. С самой первой версии SQL Server получал самые лестные отклики обозревателей, в первую очередь за простоту администрирования и поддержку хранимых процедур на сервере. Совместное развитие проекта SQL Server происходило вплоть до 1992 года, когда была выпущена версия 4.2 для OS/2, соответствовавшая по характеристикам Sybase 4.9.1 для Unix. Дальнейшие разработки и перенос версии 4.2 на платформу Windows NT, связанный с полным пересмотром архитектуры ядра сервера, был выполнен в основном фирмой Microsoft. После 1993 года Sybase приняла решение о выпуске собственных версий сервера для Windows NT, хотя Microsoft и сохранила часть прав на исходные коды. В 1994 году вышла версия SQL Server 4.21 с поддержкой NT 3.5, улучшенными утилитами администрирования, поддержкой расширенных хранимых процедур и улучшенным быстродействием. В 1995 году увидел свет SQL Server 6.0, имеющий в своем составе массу усовершенствований и нововведений. И наконец в 1996 году на рынок вышел SQL Server 6.5 - последняя и наиболее мощная реализация сервера баз данных Microsoft.
Обзор возможностей
Перечислим основные из возможностей SQL Server 6.5:
Предельные показатели
В таблице 1 перечислены предельные величины ряда технических показателей SQL Server 6.5
Таблица 1. Предельные показатели SQL Server 6.5.
Devices (логические устройства) | 256 логических устройств на SQL Server, предельный размер логического устройства 32 Гб |
Databases (базы данных) | 32,767 баз данных на сервер; минимальный размер базы 1 Мб, но не менее чем размер базы model, максимальный размер - 1 терабайт (Тб) |
Segments (сегменты) | максимальное число сегментов в базе данных - 32 |
Tables (таблицы) | предельное число таблиц в базе 2,147,483,647; максимальная длина строки в таблице без учета text и image полей - 1962 байта; максимальный размер таблицы - 1 Тб |
Columns (столбцы) | до 250 столбцов в таблице |
Indexes (индексы) | 1 кластерный индекс на таблицу; до 249 некластерных индексов на таблицу; составной индекс может включать до 16 столбцов |
Triggers (триггеры) | максимум три триггера на таблицу, INSERT, UPDATE, DELETE; уровень рекурсии триггеров до 16 |
Stored Procedures (хранимые процедуры) | хранимая процедура может иметь до 255 параметров, уровень рекурсии до 16 |
Events (соединения) | предельное число соединений - 32,767 |
Open databases (открытые базы) | максимальное число открытых баз данных - 32,767 |
Locks (блокировки) | максимальное число блокировок - 2,147,483,647 |
Open Objects (открытые объекты) | максимальное число открытых объектов - 2,147,483,647 |
Поддерживаемые типы данных
В перечислены типы данных, поддерживаемые SQL Server 6.5
Интеграция с компонентами BackOffice
SQL Server 6.5 является неотъемлемой частью компонента System Management Server и используется для хранения информации практически всей служебной информации и всех данных о компьютерах. С другой стороны SMS позволяет проводить автоматизированную установку SQL Server на любое количество компьютеров организации.
Для Internet Information Server сервер SQL может выступать в качестве хранилища информации, доступ к которой производится из ISAPI-расширения IIS - Internet Data Connector, использующим механизм ODBC или из CGI-сценариев через интерфейсы OLE или DB-Library. Кроме того, используя Web Connector и хранимые процедуры преобразования данных в HTML-формат, SQL server может со своей стороны готовить для IIS HTML-страницы.
Таблица 2. Типы данных, поддерживаемые SQL Server 6.5.
binary | 1-255 символов | фиксированный, символ представляется шестнадцатиричной цифрой, в описании присутствует 0x (0xFFAF) |
varbinary | 1-255 символов | то же, что и binary, только переменной дины |
char | 1-255 символов | фиксированный |
varchar | 1-255 символов | только переменной дины |
datetime | с 1 Января 1753 года по 31 Декабря 9999 года | длина 8 байт; по умолчанию 1 Января 1900, 12:00:0000; точность до 3.33 миллисекунды |
smalldatetime | с 1 Января 1900 года по 31 Декабря 2079 года | длина 4 байта; точность 1 минута |
decimal(p,s), numeric(p,s) | от -1038 - 1 до 1038 - 1; p - число значящих цифр, от 1 до 38; s -число знаков справа от точки, от 0 до p | длина от 2 до 17 байт, для совместимости с VB по умолчанию p полагается равным 28 |
float(n) | от 2.23E-308 до 1.79E+308, число значящих цифр n от 1 до 15 | длина 8 байт |
real | от 1.18E-38 до 3.40E+38 | длина 4 байта; то же, что и float(7) |
int | от -2,147,483,648 до 2,147,483,647 | длина 4 байта |
smallint | от -32,768 до 32,767 | длина 2 байта |
tinyint | от 0 до 255 | длина 1 байт |
money | от -$922,337,203,658,477.5808 до +$922,337,203,658,477.5807 | длина 8 байт |
smallmoney | от -$214,748,3648 до +$214,748,3647 | длина 4 байта |
bit | имеют значение 0 или 1 | минимальная длина 1 байт; несколько полей bit могут быть объединены в одном байте |
timestamp | аналог binary(8) или varbinary(8) | не связано напрямую с системным временем, однако обеспечивается уникальность данного поля в базе в каждый момент времени; таблица не может иметь более одного столбца timestamp |
text | длина до 2,147,483,647 символов | содержит текстовые данные, может использоваться в предложениях с LIKE; преобразовываться в char и varchar; если поле не NULL, или обновлялось, занимает в базе не менее 2 Кб |
image | длина до 2,147,483,647 символов | содержит двоичные данные, преобразуется в binary или varbinary; если поле не NULL, или обновлялось, занимает в базе не менее 2 Кб |
user-defined | всегда имеет базовый тип, по сути являет собой псевдоним базового типа | |
synonyms | обеспечивают ANSI совместимый синтаксис описания переменных, например: character varying(n) для varchar(n) |
Наличие в составе SNA Server ODBC/DRDA-шлюза позволяет организовать репликацию данных, хранимых в базах SQL Server в системы DB/2 для MVS, AS/400 и VM/ESP.
|