Поговорим о том, как работает БД MSSQL, зачем она нужна и как настроить свой SQL-сервер Microsoft.
Что такое база данных
База данных – это система хранения информации. Она является постоянным онлайн-хранилищем, в котором можно держать любые данные, необходимые для корректной работы вашего приложения – комментарии, статьи, профили пользователей, списки избранных материалов, песни, видео в YouTube. Все это можно считать элементами БД.
Базы данных позволяют хранить, добавлять, модифицировать и находить информацию по запросу программиста.
Что такое SQL
SQL – это язык для «общения» с базами данных. Специальный синтаксис, позволяющий при помощи несложных команд запрашивать информацию из БД или, наоборот, добавлять в нее новый контент. SQL часто используется в реляционных базах данных, где соседние элементы тесно связаны друг с другом и организуются при помощи таблиц. Схожий синтаксис используется в БД MySQL, PostgresSQL и SQL Server от Microsoft (собственно, это и есть наша MSSQL).
SQL используется как в специальных приложениях для взаимодействия с базами данных, так и на программном уровне (непосредственно в коде ваших сайтов и других проектов).
MySQL и MSSQL – одно и то же?
Нет. Как уже было отмечено выше, существует множество баз данных. MySQL чаще остальных упоминается в сети, так как является наиболее популярным вариантом БД. Она имеет открытый исходный код и распространяется бесплатно, поэтому и сыскала любовь массовой аудитории.
MSSQL – это продукт Microsoft, существующий как в коммерческой, так и в бесплатной версии. И несмотря на то, что оба продукта используют схожий синтаксис, они отличаются друг от друга с точки зрения функциональности и в плане поддержки со стороны разработчиков.
Также существует PostgreSQL – еще одна популярная база данных с высоким уровнем отказоустойчивости и большой коллекцией расширений.
Какой вариант SQL выбрать?
Вариант Microsoft отличается от конкурентов заточенностью под корпоративные задачи. В частности, решение MSSQL может похвастать повышенной надежностью. Пользователь не вправе вносить изменения в базу данных, пока она функционирует и используется приложением. Добавлять данные на SQL-сервер необходимо в момент, когда БД выключена.
При этом MSSQL Server позволяет прерывать запросы, в то время как основной конкурент базы в лице MySQL такого не допускает.
Но зато решение Microsoft стоит денег, и бесплатно разместить у себя SQL-сервер не получится (есть пробная версия и специальный вариант MSSQL для разработчиков, но использовать их в коммерческих целях нельзя).
Как настроить MSSQL?
Чтобы начать работать с Microsoft SQL Server, надо раздобыть копию самого сервера, а также установить программу для управления базами данных Microsoft через графический интерфейс.
О том, как запустить SQL-сервер подробно рассказывается на официальном сайте Microsoft. Там же есть и бесплатный дистрибутив платформы под названием Developer. Для первого знакомства с Microsoft SQL Server, отладки и тестирования кода Developer-версии будет достаточно. Загружаем ее и запускаем.
Затем устанавливаем приложение SQL Server Management Studio. Это графическая оболочка для редактирования информации в SQL-таблицах базы данных Microsoft.
Подключение к SQL-серверу
Для начала откроем утилиту SQL Server Management Studio. Все манипуляции мы будем проделывать через нее. При первом же запуске эта программа попросит вас подключиться к SQL-серверу. В интерфейсе программы он называется Database Engine.
Приложение запросит ряд данных для подключения.
-
Тип сервера (можно оставить по умолчанию, так как пока мы работаем с локальной копией MSSQL).
-
Имя сервера. Нужно его заменить, если вы переименовывали сервер, когда запускали собственную копию базы данных на локальной машине.
-
Способ аутентификации. Стоит оставить по умолчанию, если не хотите вводить пароль и логин от базы данных (или если вы вовсе их не устанавливали).
Указав необходимую информацию, нажимаем на кнопку Connect. Через несколько секунд соединение должно быть установлено, а в окне Object Explorer появится информация о SQL-сервере и его содержимом.
Создание базы
Важный момент заключается в том, что SQL-сервер и база данных – не одно и то же. Поэтому, запустив сервер и подключившись к нему, вам все еще необходимо создать базу самостоятельно.
Для этого в SQL Server Management Studio:
-
Правой кнопкой мыши кликаем по названию сервера в окне Object Explorer.
-
В списке опций находим пункт New Query.
-
Появится окно для ввода запроса. Здесь как раз поддерживается SQL-синтаксис – с помощью него мы и создадим новую базу данных.
USE master GO IF NOT EXISTS ( SELECT name FROM sys.databases WHERE name = N'databaseName' ) CREATE DATABASE [databaseName] GO
-
После этого активируем запрос, нажав на кнопку Execute в левой части интерфейса программы или на клавишу F5.
Создание таблиц
Следующая по важности структура в БД – таблица. Это набор данных, связанных какой-то характеристикой. Например, в таблице могут храниться статьи из блога. Таблицей может быть плейлист в Spotify. Отдельной таблицей может быть ветка в Твиттере или список пользователей в Facebook. Способы применения таблиц ограничиваются только фантазией разработчика.
А еще таблицы визуально напоминают Excel, поэтому для многих будет привычным подобный интерфейс.
Чтобы создать новую таблицу:
-
Кликаем по выпадающему меню со списком доступных баз данных (это поле под основным меню справа от значка в виде вилки).
-
В появившемся списке выбираем свою базу.
-
Снова делаем SQL-запрос к базе:
USE [myTable] IF OBJECT_ID('dbo.Posts', 'U') IS NOT NULL DROP TABLE dbo.Posts GO CREATE TABLE dbo.Posts ( postId INT NOT NULL PRIMARY KEY, -- primary key column Title [NVARCHAR](50) NOT NULL, Category [NVARCHAR](50) NOT NULL, Content [NVARCHAR](50) NOT NULL ); GO
-
Активируем запрос, нажав на клавишу F5.
После этого в Object Explorer появится новое поле, отражающие вновь созданную таблицу со всеми необходимыми поддиректориями (колонками, строками и т.п.).
Встраивание строк в таблицу
Сами по себе таблицы не особо полезны, если в них нет какого-либо контента. Контент добавляется с помощью строк. Строка – это набор данных, включающий в себя информацию по пунктам, соответствующим колонкам в таблице. А колонки в таблице – это список параметров, что мы указали выше, когда создавали таблицу (в нашем случае это были пункты postId, Title, Category и Content).
Чтобы добавить строки в таблицу, снова воспользуемся SQL-выражением:
INSERT INTO dbo.Customers ([postId],[Title], [Category], [Content]) VALUES ( 1, N'About apes', N'Animals', N'Apes are cool'), ( 2, N'Story', N'Articles', N'The story about dead women killer'), ( 3, N'Very important article', N'News', N'Not so important information'), GO
В запросе мы указываем наименования колонок, которые будут заполнены данными из списка запросов. В поле VALUE как раз указываются нужные данные в заранее определенном порядке. То есть первый элемент в строке станет Id, второй элемент будет Title и т.п.
Создание запросов к базе данных MSSQL
До этого мы делали SQL-запросы, которые позволяют модифицировать базу. То есть добавлять в нее новую информацию, создавать таблицы, колонки и строки. Но немаловажным является умение добывать информацию из БД, чтобы отображать ее в интерфейсе приложения или веб-сайта.
Обычно такие запросы указываются в программном коде, но и в SQL Server Management Studio их можно протестировать. Например, чтобы отобразить все строки из таблицы Posts, мы используем запрос:
SELECT * FROM dbo.Posts
В блоке Results отобразятся все строки из таблицы. Здесь же можно их отредактировать, не покидая визуальный редактор.
Программное подключение
Чтобы подключиться к базе данных Microsoft из приложения, необходимо создать функцию соединения с сервером, создав строку, содержащую в себе информацию о сервере. Его название, расположение, а также данные для аутентификации (логин и пароль). Точная схема подключения зависит от выбранного языка программирования. В случае с C#, например, применяется команда SqlConnection и строка connectionString, как показано здесь.
Информацию для других языков можно найти в официальной документации и на Stack Overflow.
Вместо заключения
Теперь вы можете создать локальную копию базы данных Microsoft и добавить в нее всю необходимую информацию. Даже если вы никогда не работали с БД, вы быстро поймете, насколько это логичный и удобный интерфейс для манипуляции контентом. Главное – практиковаться.
Комментарии