Основы работы с MSSQL

В этой статье мы обсудим, что такое MSSQL, как он работает, а также поделимся подробной информацией, которая даст вам полное представление об этой системе.

Что такое база данных (БД)

Перед тем как перейти к MSSQL, очень важно понять, что подразумевает под собой термин «база данных». 

База данных – это приложение, в котором хранится структурированный набор данных. Оно позволяет организовывать данные в таблицы, строки, столбцы и индексы, чтобы очень быстро находить нужную информацию. 

На сегодняшний день доступно множество баз данных, таких как: 

  • MySQL
  • Oracle, 
  • PostgreSQL, 
  • MongoDB, 
  • MSSQL, 
  • Sybase и прочих. 

Что такое MSSQL 

Microsoft SQL Server (MSSQL) – это система управления реляционными базами данных (СУБД), используемая для хранения и извлечения данных из других программных приложений. 

Microsoft разработала это программное обеспечение для управления информацией на нескольких компьютерах в одной сети. Используя язык программирования SQL (Structured Query Language – «язык структурированных запросов»), SQL Server может выполнять аналитику и обработку транзакций, а также работу с информацией. 

Важно! Транзакция – это рабочая единица или последовательность операций внутри базы данных. 

Обработка транзакций отвечает за определение ошибок и целостность данных. Таким образом, благодаря ей выполнение процесса либо успешно завершится, либо не произойдёт и вовсе. 

Преимущества SQL Server

Процесс установки

Установка Microsoft SQL Server проще, чем установка любой другой СУБД, поскольку для неё не требуется специальный набор инструментов. Кроме того, SQL Server обновляется автоматически. 

Хранилище

Вы можете управлять данными между устройствами, что экономит время и существенно упрощает работу с БД.

Безопасность 

MSSQL обеспечивает безопасность и целостность данных. Структура таблицы со связанными функциями гарантирует, что даже случайное повреждение данных почти невозможно.

Восстановление данных

SQL Server имеет функции резервного копирования, упрощающие восстановление данных. Это может свести к минимуму риск потери данных, независимо от того, что происходит с вашим сервером.

Выпуски MSSQL

  • SQL Server Standard. Стандартная версия включает основные функции, необходимые для большинства приложений. Сюда входят общие средства разработки, управления данными и администрирование.
  • SQL Server Enterprise. Корпоративная версия, в отличие от стандартной, поддерживает широкий спектр функций хранилища данных и добавляет поддержку большего количества пользователей, баз данных и транзакций. Она также включает в себя несколько других расширенных настроек, таких как сжатие данных, повышенная безопасность и поддержка тяжёлых БД. 
  • SQL Server Web. Веб-версия представляет собой недорогой вариант и отличается от стандартной версии, прежде всего, максимальным объёмом памяти для буферного пула и вычислительной мощностью.
  • SQL Server Developer. Предназначен для разработчиков. По сути, этот выпуск содержит все функции Enterprise, но лицензирован для использования в среде разработки и тестирования, а не в качестве производственной версии.
  • SQL Server Express. Экспресс выпуск предназначен для использования физическими лицами или небольшими организациями. Это бесплатная и наиболее доступная версия, но в то же время она является наименее функциональной.

Архитектура SQL Server

Основные компоненты и службы SQL-сервера:

Компонент Database Engine. Обеспечивает хранение, быструю обработку транзакций и защиту данных.

SQL Server. Отвечает за запуск, приостановку и в целом работу экземпляра Microsoft SQL Server. Имя исполняемого файла – sqlservr.exe.

Агент SQL Server. Выполняет роль планировщика задач. Имя исполняемого файла sqlagent.exe.

Браузер SQL Server. Прослушивает входящий запрос и подключается к нужному экземпляру SQL Server. Имя исполняемого файла – sqlbrowser.exe.

Полнотекстовый поиск SQL Server (Full-text Search). Позволяет пользователю выполнять полнотекстовые запросы к символьным данным в таблицах SQL. Имя исполняемого файла – fdlauncher.exe.

Служба записи SQL (Writer Service). Позволяет выполнять резервное копирование и восстановление файлов, даже когда сервер SQL не работает. Имя исполняемого файла – sqlwriter.exe.

Службы SQL Server Analysis Services (SSAS). Предоставляют возможности для анализа данных и машинного обучения. Имя исполняемого файла – msmdsrv.exe.

Службы SQL Server Reporting Services (SSRS). Предоставляют функции для составления отчётности. Имя исполняемого файла – ReportingServicesService.exe. 

Службы SQL Server Integration Services (SSIS). Способствуют извлечению, преобразованию и загрузке различных типов данных из одного источника в другой. Иными словами, их можно рассматривать, как конвертер необработанной информации. Имя исполняемого файла – MsDtsSrvr.exe.

Чем отличаются MySQL и MSSQL

Как и MSSQL, MySQL – это реляционная система управления базами данных с открытым исходным кодом. Поэтому эти СУБД и являются прямыми конкурентами. Однако, хотя они похожи во многих отношениях, – в первую очередь, их интерфейсами и основным функционалом, – работают всё же по-разному. 

Ниже приведены основные отличия между MySQL и SQL Server:

Параметр

MSSQLL

MySQ

Операционные системы

Изначально SQL Server был разработан Microsoft только для Windows. И хотя с тех пор компания предоставила версии для Linux и MacOS, на этих системах по-прежнему нет возможности использовать весь функционал этого ПО.

Обеспечивает бесперебойную работу на многих известных операционных системах. К примеру, на Windows, MacOS, Ubuntu и Linux.

Поддержка языков программирования

C++

Delphi

Go

Java

PHP

Python

Ruby

Virtual Basic

Eiffel

Haskel

Perl

Tcl

Доступность

Требуется лицензия для большинства серверов, на которых работает платформа.

Основной выпуск – бесплатный. Имеет открытый исходный код.

Синтаксис

Синтаксис SQL Server прост и удобен в использовании.

Синтаксис MySQL может показаться немного сложным.

Язык

Доступен на нескольких языках, включая английский, русский, немецкий, французский, японский и прочие.

Доступен только на английском языке.

Фильтрация

Поддерживает фильтрацию на основе строк. Кроме того, отфильтрованные данные хранятся в отдельной базе данных.

Позволяет фильтровать таблицы, строки и пользователей различными способами. Однако MySQL поддерживает фильтрацию только для отдельных баз данных. Таким образом, разработчикам приходится фильтровать таблицы базы данных, по отдельности выполняя несколько запросов.

Резервное копирование

При резервном копировании данных БД не блокируется. Это позволяет пользователям завершить процесс резервного копирования и восстановления данных за меньшее количество времени и затраченных усилий.

В процессе резервного копирования база данных блокируется. Это предотвращает случаи повреждения данных при переходе с одной версии MySQL на другую, но увеличивает количество времени, затраченное на весь процесс.

Возможность остановить выполнение запроса

Может обрезать выполнение запроса, не завершая весь процесс.

Невозможно отменить или остановить выполнение запроса, не завершая весь процесс.

Безопасность

Не позволяет никакому процессу получать доступ к файлам БД и манипулировать ими во время выполнения. Это предотвращает возможность получения прямого доступа хакеров к данным.

Позволяет разработчикам манипулировать файлами БД через двоичные файлы во время выполнения.

Выпуски

У MMSQL есть несколько выпусков, подходящих под разные задачи: Standart, Enterprise, Web, Developer и Express.

MySQL представлен в трёх вариантах: Standart, Enterprise и Cluster Grade.

Так что же лучше для работы с базами данных – MySQL или MSSQL? 

На этот вопрос нет универсального ответа, поскольку выбор между MySQL и SQL Server зависит от ваших конкретных потребностей. Обе базы данных имеют свои сильные стороны, и лучший выбор для вашего проекта зависит от различных факторов, включая стоимость, масштабируемость и базовую инфраструктуру. 

К примеру, с точки зрения безопасности и целостности ваших данных имеет смысл обратить внимание именно на СУБД компании Microsoft.

Версии MSSQL на хостинге RU-CENTER

При заказе Windows VPS в RU-CENTER вам будет доступен выпуск Microsoft SQL Server 2017 Web. 

Как настроить удалённый доступ к MSSQL

1. Если у вас не установлена среда SQL Server Management Studio (SSMS), то скачайте её с официального сайта Microsoft и установите на свой сервер.

2. Откройте SSMS. Войдите на SQL Server, где вы планируете создавать базу данных. Для этого:

  • в строке «Server name» выберите имя сервера. Его можно найти в вашем Личном кабинете RU-CENTER;
  • в строке «Authentication» выберите опцию SQL Server Authentication;
  • в строке «Login» введите логин;
  • в строке «Password» – пароль.

Готово! Вы получили удалённый к SQL Server и теперь можете приступать к непосредственной работе с базами данных.

Как создать базу данных MSSQL

Способ 1. Использовать графический интерфейс SQL Server Management Studio

При создании базы данных в Microsoft SQL Server использование среды SSMS может значительно облегчить вам задачу. 

  1. Скачайте среду SQL Server Management Studio (SSMS) с официального сайта Microsoft и установите её. 
  2. Откройте SSMS. Войдите на SQL Server, где вы планируете создавать базу данных. 

  1. Обратите внимание на левое меню «Object Explorer». Щёлкните правой кнопкой мыши по папке Databases.

  1. Из предложенного списка опций выберите New Database.

  1. Перед вами появится окно создания БД. В строке «Database name» введите имя новой базы данных и нажмите ОК.

​​​​​​

База данных будет создана с параметрами системы по умолчанию. Для создания БД с расширенными настройками после того, как зададите ей имя, воспользуйтесь разделом меню «Options».

Вы можете нажать + рядом с папкой «Databases», чтобы развернуть список уже существующих баз данных и проверить в нём наличие только что созданной базы.

Cпособ 2. Создать базу данных с помощью T-SQL

Transact-SQL (T-SQL) – это расширение языка программирования   SQL, который создала компания Microsoft для работы со своей системой SQL Server. Именно им мы и воспользуемся в этом руководстве.  

Важно! При создании базы данных в производственной среде, убедитесь, что у вас достаточно места на диске для размещения файлов данных и журналов. Кроме того, проверьте, что ваши данные и файлы журнала находятся не на одном диске.

  1. Если у вас не установлена среда SQL Server Management Studio (SSMS), то скачайте её с официального сайта Microsoft и установите на свой сервер.
  2. Откройте SSMS. Войдите на SQL Server, где вы будете создавать базу данных. 

  1. Чтобы открыть редактор запросов SQL Server MS, в верхнем меню щёлкните по опции New Query

  1. В появившемся окне вы можете создать базу данных с параметрами по умолчанию. Для этого просто введите общую команду:

CREATE DATABASE TestNIC

Где вместо «TestNIC» пропишите желаемое название БД.

  • Для создания базы данных с расширенными параметрами вы можете воспользоваться следующим примером скрипта: 

USE master 
GO  
CREATE DATABASE TestNIC
ON   
(NAME = TestNIC,  
    FILENAME = 'D:\SQLServer\Datafiles\TestNIC.mdf',  
    SIZE = 10,  
    MAXSIZE = 20,  
    FILEGROWTH = 2)  
LOG ON
(NAME = TestNIC,
    FILENAME = 'D:\SQLServer\Datafiles\TestNIC.ldf',
    SIZE = 10,
    MAXSIZE = 25,
    FILEGROWTH = 2;
GO

Где необходимо заменить:

  • «TestNIC» – на название вашей базы данных;
  • «D:\SQLServer\Datafiles\» – на путь к вашей БД и файлам логов;
  • все цифровые значения на желаемые. 

Давайте подробнее посмотрим, что означают параметры, используемые в нашем примере сценария: 

«NAME» – это логическое имя файла данных или журнала;
«FILENAME» указывает имя системного файла сервера;
«SIZE» определяет начальный размер файла;
«MAXSIZE» указывает максимальный размер, до которого может вырасти файл, по умолчанию в МБ;
«FILEGROWTH» указывает автоматический прирост файла, по умолчанию в МБ.

Что такое таблицы в БД

Таблица — это основной элемент реляционной базы данных для хранения и структурирования данных. 

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

Таблица состоит из двух компонентов: строк и столбцов. 

Как создать таблицы в MSSQL

Теперь, когда мы разобрались в том, что же такое таблица, перейдём к рассмотрению процесса создания таблицы в SQL Server. 

Перед началом откройте SQL Server Management Studio и войдите на SQL Server, где вы планируете создать базу данных. 

Способ 1. С помощью SSMS

  1. В левом меню «Object Explorer» щёлкните по значку + рядом с папкой «Databases», чтобы развернуть список всех баз данных.
  2. В списке выберите БД, в которой хотите создать таблицу. 
  3. Щёлкните правой кнопкой мыши по папке Tables

  1. Из списка опций выберите New, а затем Table.

Перед вами откроется конструктор таблиц с тремя колонками:

  • Column Name – отвечает за название столбца;
  • Data Type – здесь можно выбрать тип данных для этого столбца;
  • Allow Nulls – если отметить столбец флажком, он сможет принимать нулевое значение.
  1. Заполните таблицу данными.
  2. Выберите один или несколько столбцов на роль первичного ключа, который уникально идентифицирует каждую строку. Для этого нажмите правой кнопкой мыши по столбцу и после выберите Set Primary Key.

  1. Сочетанием клавиш Ctrl+S вызовите окно сохранения таблицы. Введите название и нажмите ОК

Способ 2. С помощью T-SQL

  1. В левом меню «Object Explorer» щёлкните по значку + рядом с папкой «Databases», чтобы развернуть список всех баз данных.
  2. В списке выберите БД, в которой хотите создать таблицу.
  3. Нажмите по ней правой кнопкой мыши и затем кликните по опции New Query.

  1. Для создания таблицы без добавления дополнительных параметров введите вы можете воспользоваться общим синтаксисом:

CREATE TABLE TestTAB
(имя_столбца1 тип_данных_столбца1, 
имя_столбца2 тип_данных _столбца2,
 …
);

Где TestTAB – название вашей таблицы.

Чтобы было проще понять, как в итоге должен выглядеть скрипт, приведём в пример сценарий простой таблицы:

CREATE TABLE Clients
(
    ID INT,
    Age INT,
    FirstName NVARCHAR(20),
    LastName NVARCHAR(20),
    Email VARCHAR(30),
    Phone VARCHAR(20)
);

  1. Для добавления дополнительных параметров рекомендуем вам воспользоваться примерным синтаксисом:

CREATE TABLE TestTAB
(имя_столбца1 тип_данных_столбца1 PRIMARY KEY, 
имя_столбца2 тип_данных _столбца2 NOT NULL,
 ...
);

Где:

  • TestTAB – название вашей таблицы;
  • Параметр «PRIMARY KEY» идентифицирует столбец как первичный ключ;
  • Параметр «NOT NULL» не позволяет столбцу принять нулевое значение.

В результате, ваш сценарий создания таблицы «Clients» может выглядеть следующим образом:

USE
CREATE TABLE Clients
(
    ID INT, PRIMARY KEY IDENTITY (1, 1),
    Age INT NOT NULL,
    FirstName NVARCHAR(20), 
    LastName NVARCHAR(20) NOT NULL,
    Email VARCHAR(30),
    Phone VARCHAR(20) NOT NULL
);

Заключение

Мы с вами уже разобрались в основных понятиях, связанных с администрированием SQL Server, а также рассмотрели несколько инструкций по администрированию данной СУБД. Однако остаётся вопрос: как начать работать с MSSQL?

RU-CENTER предлагает различные тарифы Windows VDS/VPS. Вы можете ознакомиться с ними и выбрать тот, который подходит именно вам. Тарифный план будет автоматически включать в себя возможность работы с системой SQL Server.

Всё ещё остались вопросы?