Введение в SQL Server.

Microsoft SQL Server 2000, на базе которого будет строиться дальнейшее изложение, является реляционной СУБД, поддерживающей технологию клиент-сервер вплоть до создания распределённых баз данных в масштабе локальной или глобальной компьютерной сети. SQL Server позволяет создавать базы данных различного масштаба: от уровня домашней сети до корпоративного. По уровню значимости основным конкурентом SQL Server , которому обычно отдаётся первое место по многим показателям, является Oracle Corporation.

Краткая история :

  1. В 1988 году Microsoft и Ashton-Tate анонсировали первую версию Microsoft SQL Server — реляционную СУБД для локальных вычислительных сетей. Новый продукт носил название Ashton-Tate/Microsoft SQL Server и представлял собой версию Sybase DataServer для OS/2. Роль Ashton-Tate заключалась в том, что эта фирма предоставила dBASE IV, используемую для разработки приложений.
  2. В 1992 выпущен SQL Server 4.2 — 16-разрядная СУБД, результат совместной работы Microsoft и Sybase. В этой СУБД были реализованы клиентские библиотеки для MS-DOS, Windows и OS/2, помимо этого в нее впервые были включены средства администрирования с графическим интерфейсом под управлением Windows.
  3. В 1996 году выпущен SQL Server версии 6.5, обладавший встроенной поддержкой Web-приложений, средствами распределенного администрирования, наличием динамических блокировок.
  4. 1998 — выпущен Microsoft SQL Server 7.0 с радикально измененной архитектурой. Это была первая версия SQL Server, не содержавшая унаследованного кода, оставшегося со времен сотрудничества с Sybase. Особо стоит отметить появление в этой версии OLAP-служб (служб анализа данных) в составе продукта (до этого серверные OLAP-средства, производимые поставщиками серверных СУБД, включая и Oracle, продавались исключительно как отдельные продукты и относились к категории весьма дорогостоящего программного обеспечения).
  5. В 2000 – выпущен Microsoft SQL Server 2000, поддерживающий XML ( eXtensible Markup Language , расширяемый язык разметки), а также содержащий множество нововведений в административных утилитах. Версия Microsoft SQL Server 2000 построена на основе ядра Microsoft SQL Server 7.0. Ее отличительными особенностями являются повышенная масштабируемость, производительность и интеграция с Internet.

Одним из главных событий, определивших дальнейшую судьбу Microsoft SQL Server, стало решение Microsoft сосредоточить усилия исключительно на поддержке только платформы Windows NT. Эта СУБД настолько связана с операционной системой, что ее надежность, масштабируемость и производительность определяются надежностью, масштабируемостью и производительностью самой платформы, и положение SQL Server на рынке будет зависеть от выпуска новых версий Windows. Рекомендуемая платформа: Windows 2000 Server.

Одним из преимуществ SQL Server является простота его применения, в частности администрирования. SQL Server Enterprise Manager , входящий в состав всех редакций Microsoft SQL Server, представляет собой полнофункциональное и достаточно простое средство для администрирования этой СУБД.

SQL Server имеет в своём составе программное обеспечение для установки на серверные системы и клиентское программное обеспечение, которое устанавливается на персональные компьютеры клиентов. Приложения клиента выполняют всю работу по взаимодействию с пользователем, включая отображение информации и предоставление возможности работы с приложением через графический интерфейс пользователя. Все клиентские приложения взаимодействуют с SQL Server , используя один или два собственных API ( Application Programming Interface ) для доступа к базе данных: ODBC ( Open Databases Connectivity , открытое соединение с базами данных) и DB - Library (Библиотека баз данных). Продукты SQL Server содержат множество сервисов и компонентов как на компьютерах клиентов, так и на компьютере-сервере, которые взаимодействуют друг с другом, а также с сервисами и компонентами Windows .

SQL Server поддерживает весьма широкий набор сетевых протоколов. Для каждого из них поддерживается режим прямого доступа с использованием типичных для каждого протокола средств (например, Sockets (сокеты) для TCP/IP или IPS/SPX ; Named Pipes (именованные каналы) для NetBios ), что дает возможность обращаться к серверу не только из среды Windows и OS/2, но и с платформ Mac и Unix. Дополнительно для протоколов TCP/IP, IPX/SPX и NetBios поддерживается доступ через защищенные вызовы RPC ( Remote Procedure Call , удалённый вызов процедур). Данный тип соединений называют trusted connection , или доверительные соединения.

Как принято для серверных приложений Windows NT, ядро SQL Server реализовано в виде набора сервисов, для управления которыми используются административные утилиты. Компоненты, образующие ядро SQL Server:

  1. собственно сервер, который может быть запущен как сервис MSSQLServer или как приложение с командной строки (Sqlservr.exe);
  2. компонент SQL Executive – сервис SQLExecutive, обеспечивающий выполнение на основе расписания таких операций, как репликация данных, запуск заданий; кроме того на него возлагается контроль за наступлением событий и оповещение администраторов и/или операторов;
  3. компонент DTC (Distributed Transaction Coordinator) – сервис MSDTC, отвечающий за выполнение распределенных транзакций;
  4. компонент SQL Mail, обеспечивающий интеграцию SQL Server в почтовую систему организации и позволяющий отправлять запросы и получать результаты их выполнения по почте.

Устройства баз данных ( database devices ) могут размещаться в дисковых файлах или на неразмеченных разделах жестких дисков ( RAW partitions ), устройства резервных копий ( dump devices ) могут быть ассоциированы с дисками, съемными накопителями, устройствами записи на магнитные ленты и именованными каналами (для систем распределенного резервного копирования). Базы данных являются непосредственными хранилищами пользовательских данных и хранимых процедур. Каждая база данных, допускающая режим записи, должна иметь ассоциированный с ней журнал транзакций, который может располагаться как на отдельном устройстве, так и делить устройство с базой данных.

Версия языка SQL, используемого SQL Server, называется Transact-SQL, или T-SQL, в память о том, что в именно этом в диалекте SQL появились операторы управления транзакциями. В T-SQL поддерживаются все операторы стандарта ANSI SQL-92, включая оператор CASE, декларативную целостность (Declarative Reference Integrity, или DRI) и описание объединений (joins).

Дополнительно T-SQL позволяет указывать оптимизатору запросов порядок выполнения операций и используемые индексы. Наличие оператора EXEC, способного воспринимать в качестве входного параметра символьную строку, дает возможность динамически формировать и исполнять предложения SQL.

назад главная вперед