Azotirovanie.ru

Инженерные системы и решения
7 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Выбор и назначение компонентов Microsoft SQL Server

Выбор и назначение компонентов Microsoft SQL Server

При работе с информационными системами ранее установленными системными администраторами, достаточно часто можно столкнуться с ситуацией, что на сервере, где требуется исключительно управление базами данных — установлены все компоненты, которые поставляются в дистрибутиве SQL сервера. На резонный вопросе: «Зачем установлены все компоненты?», можно получить ответ «Я всегда ставлю все компоненты» или «Я не знаю зачем нужен каждый из компонентов, поэтому на всякий случай установил все».
Понятно, что такой подход в корне неверный, так как на сервере работают службы, которые никем и никогда не используются, и эти службы, в свою очередь впустую используют вычислительные ресурсы сервера, что может негативно отражаться на производительности самого сервера, так и хоста виртуализации (в случае если SQL сервер виртуализован).

Ниже представлен список основных компонентов поставляемых в дистрибутиве SQL сервер, их краткое описание и назначение:

  • Replication (Репликация): Этот компонент представляет собой набор технологий копирования и распространения данных и объектов баз данных между базами данных, а также синхронизации баз данных для поддержания согласованности.
  • Full-Text Search (Полнотекстовый и семантический поиск): Этот компонент позволяет выполнять полнотекстовые запросы по таблицах SQL сервера для произвольных символьных данных.
  • Data Quality Services (Служба качества данных): этот компонент, который дает возможность обнаруживать несогласованные и неверные данные в источнике данных и предоставляет компьютеризированные и интерактивные методы очистки данных.

Analysis Services (Службы анализа) — эта служба содержит инструменты для создания приложений оперативной аналитической обработки (online analytical processing (OLAP)) и приложений интеллектуального анализа данных, а также средства управления ими. Это его принципиально отличиает от компонента Database Engine, который работает в режиме оперативной обработки транзакций (online transaction processing (OLTP)).

Reporting Services – Native (Службы отчетов в собственном режиме) — эта служба использует серверные и клиентские компоненты для создания и развертывания табличных, матричных и графических отчетов и отчетов в свободной форме, а также управления ими.

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

Reporting Services – SharePoint (Службы Reporting Services в режиме SharePoint) это серверное приложение для создания, управления и доставки отчетов по электронной почте, но в отличии от Reporting Services – Native, в режиме SharePoint, функции просмотра отчетов и управления ими интегрированы в продукты SharePoint.

Reporting Services Add-in for SharePoint Products (Надстройка для службы отчетов для продуктов SharePoint) — содержит компоненты интерфейса пользователя и средства управления, позволяющие интегрировать продукт SharePoint с Службами Reporting Services сервера отчетов в режиме интеграции с SharePoint

Data Quality Client (Клиент Data Quality) — это отдельное приложение, которое подключается к серверу DQS и обеспечивает интуитивный графический пользовательский интерфейс для очистки данных, выполнения операций подбора данных и административных задач в DQS.

Client Tools Connectivity (Средства связи клиентских средств) — В клиентские средства входят компоненты, предназначенные для обеспечения взаимодействия между клиентами и серверами, в том числе сетевые библиотеки для DB-Library, OLEDB для OLAP, ODBC, ADODB и ADOMD+.

Integration Services (Службы Интеграции) — представляют собой набор графических средств и программируемых объектов для перемещения, копирования и преобразования данных.

Client Tools Backward Compatibility (Обратная совместимость клиентских средств) — обеспечивается следующими компонентами: SQL Distributed Management Objects (SQL-DMO) и Decision Support Objects (DSO).

Client Tools SDK (Пакет SDK клиентских средств) Содержит пакет средств разработки программного обеспечения, содержащий ресурсы для программистов.
Documentation Components (Документация) Компоненты документации содержат компоненты для просмотра и управления содержимым справки.

  • Среда SQL Server Management Studio
  • Поддержка Компонент SQL Server Database Engine,
  • SQL Server Express, служебной программы sqlcmd
  • SQL Server поставщика PowerShell
  • Поддержка среды Среда SQL Server Management Studio для служб Reporting Services
  • Analysis Services
  • Integration Services
  • Приложение SQL Server Profiler
  • Database Engine Tuning Advisor
  • SQL Server Управление программой

Distributed Replay Client (Клиент распределенного воспроизведения) Клиенты распределенного воспроизведения работают совместно для имитации рабочей нагрузки на экземпляре SQL Server. В каждой среде распределенного воспроизведения можно установить один или несколько клиентов.

SQL Client Connectivity SDK (Пакет SDK для подключения клиентов SQL) Содержит пакет SDK для подключения собственных клиентов Native Client SQL Server (ODBC/OLE DB) для разработки приложений баз данных.

Master Data Services (Службы Master Data ) Службы Службы Master Data Services — это платформа для интеграции данных из различных систем на предприятии в единый источник основных данных для повышения точности и удобной организации аудита. При выборе параметра Службы Master Data Services устанавливается Диспетчер конфигурации Master Data Services, сборки, оснастка Windows PowerShell, папки и файлы для веб-приложений и служб.

По умолчанию экземпляр SQL сервера и общие компоненты (shared components) устанавливаются в каталог %Program Files%Microsoft SQL Server. Изменить путь установки можно в процессе начальной установки SQL сервера. Изменение пути установки для одного общего компонента приводит к его изменению для всех остальных общих компонентов. При последующей доустановке общих компонентов, они будут устанавливаться в каталог, заданный при начальной установке.

Microsoft SQL Server: работа с базами данных

Наши пользователи могут использовать базы данных Microsoft SQL Server 2012 на своих виртуальных площадках в рамках, предусмотренных соответствующими тарифами.

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

Параметры и способы соединения с Microsoft SQL Server

  • Имя хоста (сервера), на котором размещена база данных Microsoft SQL Server: uXXXXX.mssql.masterhost.ru;
  • Порт: 1433;
  • Логин: соответствует названию виртуальной площадки — uXXXXX;
  • Пароль: указан в письме, которое пользователь получает при регистрации;
  • Имя базы данных: соответствует названию виртуальной площадки — uXXXXX;
  • Подключение нужно осуществлять по протоколу TCP/IP.
Читайте так же:
Жилищник текстильщики поверка счетчиков

Подключение к SQL-серверу через «Microsoft SQL Server Management Studio Express»

Чтобы получить доступ к базе данных Microsoft SQL Server, возможно использовать Microsoft SQL Server Management Studio Express .

Подключение к Microsoft SQL Server 2012

В свойствах подключения («Options», закладка «Connection Properties») выберите в качестве сетевого протокола («Network Protocol») TCP/IP.

Подключение к Microsoft SQL Server 2012: свойства соединения

Создание новой базы данных

Новую базу данных вы можете создать через раздел Услуги, в Личном кабинете. Выберите нужную «виртуальную площадку», далее в разделе «MS SQL» нажать на кнопку «+ База MS SQL». Затем вам необходимо указать имя (логин) и выбрать владельца новой базы.

Использовать Microsoft SQL Server Management Studio для создания новых баз данных нельзя.

Создание нового логина

Создать новый логин для базы данных Microsoft SQL вы можете через раздел Услуги, в Личном кабинете. Выберите нужную «виртуальную площадку», далее в разделе «MS SQL» нажать на кнопку «+ Пользователь MS SQL». Затем вам необходимо указать имя (логин) для нового пользователя.

Уменьшение физического размера файлов баз данных и лога транзакций MS SQL Server.

Из графического интерфейса Microsoft SQL Server Management Studio:

  • В обозревателе объектов подключитесь к экземпляру SQL Server 2012 Database Engine и разверните его.
  • Разверните узел «Базы данных», затем правой кнопкой мыши щелкните базу данных, которую нужно сжать.

В меню «Задачи» выберите «Сжать» и щелкните «База данных». Или установите флажок «Реорганизовать файлы перед освобождением неиспользуемого места».

Если он установлен, необходимо указать значение параметра «Максимально доступное свободное место в файлах после сжатия».

Стандартным t-sql запросом вида:

где uXXXXX — имя вашей базы данных.

Изменение кодировки сравнения (collation)

По умолчанию кодировка collation выставлена как Cyrillic_General_CI_AS, изменить кодировку для сравнений можно следующим SQL-запросом:

где uXXXXX — имя БД, где требуется данная операция.

Список доступных кодировок можно узнать так:

Можно ли использовать MSSQL Server Enterprise Manager для работы со своей базой данных Microsoft SQL Server 2012?

Microsoft SQL Server Enterprise Manager не предназначен для работы с базами данных Microsoft SQL Server 2012. Для управления своей БД можно использовать SQL Server Management Studio, или её бесплатный вариант — Microsoft SQL Server 2012 Management Studio Express .

Как дать права на доступ к базе определенному логину

Для SQL — дополнительный SQL логин, но настраивать права нужно самому: Заводим ещё один SQL логин — uXXX_Ann

Для начала используем нашу базу:

Создаём пользователя для определённого «логина»:

Наделяем его правами (например только чтение таблиц):

Или можем дать пользователю только конкретные права, на конкретные таблицы. Например, давайте дадим пользователю InetUser права на SELECT, INSERT, UPDATE для таблицы test, следующим SQL-запросом :

При всем при этом, при осуществлении доступа через SQL Management Studio, под дополнительным логином не являющимся владельцем базы, не будет видно базу данных в списке доступных баз, но будет возможность выполнять разрешенные SQL-запросы .

Что такое SQL и как он работает

Википедия гласит, что SQL — это декларативный язык программирования, применяемый для создания, модификации и управления данными в реляционной базе данных, управляемой соответствующей системой управления базами данных. Не самое удобоваримое определение. Чтобы понять, о чём вообще речь, разберём его.

Декларативный язык программирования говорит, что должно быть сделано, а не как это необходимо сделать. Ещё один пример декларативного языка — HTML. Рассмотрим такой код:

С его помощью мы заявляем (declaration — заявление) браузеру, что хотим увидеть блок с классом className и кнопкой с текстом «Ясно. Понятно.» внутри. Для этого мы не создаём каких-либо переменных, циклов, условий. Мы знаем, что браузер нас понял, сам разберёт команду и вернёт результат или ошибку.

Здесь смысл довольно прост: мы даём команду и получаем результат. Мы не описываем, как эту команду выполнять. Чтобы понять, что такое реляционная база данных, разберём, что такое база данных в принципе. Декомпозируем это понятие на «база» и «данные».

Данные

В контексте баз данных под данными понимают набор значений, который собирается в строки и столбцы, тем самым представляя таблицу. Представим, что у нас есть каталог мебельного магазина. Нам нужно сохранить все данные из раздела «Шкафы» этого каталога в таблицу. Мы решили, что все шкафы отличаются друг от друга характеристиками:

  • название производителя;
  • название модели;
  • высота;
  • длина;
  • цвет;
  • количество дверей.

Составим таблицу и вобьём в неё выдуманные данные.

У нас есть таблица с данными. Столбцами мы показываем, как они будут храниться. В примере я указал, что мы будем хранить информацию в структуре: производитель, модель, высота, длина, цвет, количество дверей. Иными словами, я создал структуру таблицы.

Добавляя в таблицу строки, я вводил в неё данные, ориентируясь на структуру, заданную в столбцах. Чем больше строк, тем больше данных. Чем больше столбцов, тем подробнее будут эти данные.

Ещё есть такое понятие, как «значение» — это пересечение столбца и строки. Например, у последней строки в столбце «Цвет» написано «хаки». Здесь «хаки» — значение. Если мы начнём группировать таблицы и добавим возможность манипулирования ими, то получим базу данных.

Теперь про базы

Получается, что БД — это совокупность данных, представленных определённым образом (в нашем случае — таблицей), и набор инструментов для манипулирования ими.

Данные могут быть сгруппированы не только в таблицы, но и в коллекции. У каждой базы есть свой инструмент для создания таблиц/коллекций, добавления, удаления или изменения данных, а также для составления выборки. В статье мы рассмотрим базы, которые состоят из таблиц, а инструментом манипулирования данными будет язык SQL.

Таблицы между собой могут объединяться в схемы — в одной базе данных их может быть несколько, а может и не быть деления на схемы вообще. Это зависит от БД.

Вернёмся к определению из Википедии и вспомним про слово «реляционные». Реляционные (от англ. relation — отношения) — это базы данных, таблицы которых могут выстраиваться в различных отношениях. Возьмём предыдущий пример и добавим в него тех самых «отношений». Создадим таблицу «Производитель», а ту, что в примере, обозначим как «Каталог».

Теперь таблицу «Каталог» можно оформить в другом виде:

Получилось так, что у таблиц «Каталог» и «Прозводитель» появились отношения. Значения из столбца «Каталог» ссылаются на строки из таблицы «Производитель». Добавлением отношения мы решили нескольких проблем:

  1. Избавились от избыточных данных. Каталог стал занимать меньше места. Вместо хранения целой строки мы используем только номер строки из таблицы «Производитель».
  2. Снизили вероятность ошибиться. При смене названия производителя нам достаточно отредактировать строку в таблице «Производитель», «Каталог» останется без изменений.

Это не все проблемы, которые мы решили добавлением отношений. Для понимания других проблем необходимо углубиться в тему баз данных. Разделение данных на таблицы с отношениями — это процесс нормализации. Так можно достигать различных нормализованных форм данных. При достижении каждой из нормализованных форм мы избавляем данные от дополнительных проблем.

Вернёмся к SQL

Если читателю показалось, что мы ушли в сторону от SQL, так оно и есть. Но очень трудно понять, что такое SQL, не зная, с чем он работает.

Выходит, что SQL — это язык программирования, необходимый для написания команд к БД, после выполнения которых она вернёт результат. Результат будет зависеть от команды, написанной на SQL. Как в любом другом языке программирования, в SQL есть операторы для работы с данными, из которых складываются команды. Операторы распределены по четырём языкам:

  • DDL — Data Definition Language;
  • DML — Data Manipulation Language;
  • DCL — Data Control Language;
  • TCL — Transaction Control Language.

DDL (Data Definition Language, язык описания данных) — язык, включающий операторы для работы со структурой данных. Операторы DDL нужны для реализации этих возможностей:

  • Создание объектов базы данных (таблиц, схем). Оператор: CREATE.
  • Удаление объектов базы данных. Оператор: DROP.
  • Изменение объектов базы данных. Оператор: ALTER.

DDL используется, когда нужно создать структуру для хранения данных. Он не отвечает за сами данные — только за то, как они будут разделены по таблицам и схемам.

DML (Data Manipulation Language, язык манипуляции данными) — язык, который нужен для добавления, удаления, изменения данных и для выборки их из базы. Иными словами, для манипулирования данными. Пройдёмся по операторам:

  1. Оператор SELECT позволяет выбрать данные.
  2. Оператор INSERT — добавить новые.
  3. Оператор UPDATE — изменить существующие.
  4. Оператор DELETE — удалить.

DCL (Data Control Language, язык управления доступом к данным) — набор операторов, необходимых для предоставления доступа к данным. Кроме данных, в БД есть такие сущности, как пользователи. Нужно обязательно иметь возможность ограничить пользователям доступ к данным. Например, мы не хотим, чтобы менеджер проекта мог редактировать данные или их структуру. Для этого есть три группы операторов.

  • GRANT — оператор предоставления пользователю или группе набор каких-либо разрешений;
  • REVOKE — оператор отзыва разрешений;
  • DENY — задаёт запрет. Приоритет оператора DENY выше, чем у разрешения, выданного оператором GRANT.

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

Для управления транзакциями существует TCL (Transaction Control Language — язык управления транзакциями). Операторы здесь следующие:

  • BEGIN TRANSACTION — необходим для обозначения начала транзакции;
  • COMMIT TRANSACTION — применяет изменения команд внутри транзакции;
  • ROLLBACK TRANSACTION — откатывает транзакцию;
  • SAVE TRANSACTION — указывает промежуточную точку сохранения внутри транзакции.

TCL есть только в тех БД, которые поддерживают транзакции. Самое время поговорить о видах БД.

Виды СУБД

Познакомимся с новым понятием — СУБД, системой управления базой данных.

Сергей Кузнецов в книге «Основы баз данных» описал СУБД как комплекс программ, позволяющих создать базу данных (БД) и манипулировать данными (вставлять, обновлять, удалять и выбирать). Система обеспечивает безопасность, надёжность хранения и целостность данных, а также предоставляет средства для администрирования БД.

Получается что, СУБД — это SQL плюс комплекс программного обеспечения. Очень часто базы данных путают с системой управления базой данных. Это нормально: понятия неразрывны, сама по себе БД без системы управления мало чем отличается от текстового файла со строчками. Важно не только хранить данные, но и управлять ими. СУБД применяются везде, где нужно структурировано хранить данные — от простого блога до проектов Data Science.

Есть много популярных СУБД, рассмотрим несколько из них.

MySQL

MySQL — свободная реляционная СУБД. Разрабатывалась как легковесная замена тяжёлым СУБД, которую можно было установить на маломощный сервер, без сильных потерь в возможностях. MySQL трудится под капотом таких гигантов, как YouTube, Facebook, Twitter, GitHub.

СУБД написана на C и C++. MySQL породил множество ответвлений, которые сейчас стали самостоятельными СУБД, например Percona и MariaDB.

Oracle Database

История Oracle Database начинается с 1977 года. Это объектно-реляционная система управления данными. Это довольно тяжёлая СУБД, поддерживает системы любой сложности, например, в банковской или финансовой сферах. У неё нет бесплатной лицензии. Процедурный SQL — PL/SQL. Языки написания СУБД — Java/C/С++

Microsoft SQL Server

Microsoft SQL Server — система управления реляционными базами данных, разработанная Microsoft. Первая версия SQL Server появилась 29 апреля 1989 года. Это конкурент Oracle Database. Есть бесплатная лицензия для разработчиков, но не для коммерческого использования. Процедурный SQL — Transact-SQL. СУБД написана на C/C++/C#.

PostgreSQL

PostgreSQL — свободная объектно-реляционная система управления базами данных. Эта СУБД увидела свет 8 июля 1996 года. Конкурент MySQL в веб-разработке проектов любой сложности, также соперничает с базами от Oracle и Microsoft в промышленной разработке. У неё прекрасная русскоязычная документация. Как и MySQL, имеет бесплатную лицензию для коммерческой разработки, за что так же, как и MySQL, горячо любима. Процедурный SQL — PL/pgSQL. Разработана на языке С.

Каждая из приведённых СУБД работает на своём расширении SQL. У каждой — своя ниша применения, плюсы и минусы.

Что после знакомства?

Если вы не знаете, какая конкретно СУБД вам нужна, выбирайте MySQL. Она лишена изысканных возможностей, которые будут только сбивать начинающего разработчика. Большое комьюнити не оставит в беде и уже решило 95% проблем. Разнообразие графических клиентов для всех операционных систем хорошо помогает на ранних этапах. MySQL позволит набраться опыта и понять, чем она хуже или лучше других СУБД. Когда вы поймёте принципы работы MySQL, для вас не составит труда переключиться на работу с PostgreSQL или другой СУБД. Цель работы у всех СУБД одна — рациональное и надёжное хранение данных и быстрое их извлечение или изменение.

После того как вы определитесь с выбором, хорошо будет посмотреть практики других разработчиков на YouTube-каналах «Технострим Mail.ru Group» или HighLoad Channel, почитать замечательный портал ruhighload.com, где, кроме статей про базы данных, рассматриваются проблемы больших нагрузок. А для тех, кто любит почитать больше, подойдёт книга «MySQL по максимуму. 3-е издание» Бэрона Шварца, Петра Зайцева и Вадима Ткаченко. Узнать больше вы, конечно, можете и в GeekBrains — приходите ко мне или моим коллегам на курс «Основы баз данных».

Освоить востребованную профессию в Data Science можно всего за полтора года на курсах GeekBrains. После учёбы вы сможете работать по специальностям Data Scientist, Data Analyst, Machine Learning, Engineer Computer Vision-специалист или NLP-специалист.

Что такое СУБД

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

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

Поскольку и именно сервер предоставляет данные, клиенты должны запрашивать их. Клиент посылает запрос SQL серверу. Сервер обрабатывает запрос и возвращает клиенту запрошенные им данные. Запрос реализуется на специальном языке, который одинокого понятен пользователю и серверу. Этот язык SQL.

Сервера различаются тем:

  • Как они предоставляют доступ;
  • Как хранят данные;
  • Как предоставляют данные пользователю.

Для каждой из этих целей служит отдельный программный компонент:

  • Предоставление доступа и визуализация БД – прикладные программы;
  • Предоставление данных – интерфейс;
  • Хранение данных – программы взаимодействия с файловой системой;

Для взаимодействия этих программных компонентов существует еще один, которые объединяет их в систему, он называется Системой Управления Базами Данных (СУБД).

Зачем нужна СУБД

СУБД – это программная прослойка между пользователем и сервером. Поэтому она позволяет абстрагировать пользователя от системного видения БД, а системе предоставляет способ взаимодействовать с пользователем.

СУБД должна обеспечивать:

  • извлечения данных с диска, сохранение данных на диск;
  • работу с данными в оперативной памяти сервера;
  • запись истории изменения БД (журналирование);
  • поддерживать запросы пользователя для определения и манипулирования данными на языке SQL.

В зависимости от различия в реализации этих компонентов различаются и СУБД.

Виды СУБД

Базы данных различаются между собой тем, как внутри них связаны данные. Соответственно различаются и СУБД, которые эти БД поддерживают. Внутренние связи данных внутри БД называются моделями данных.

По поддержке баз данных различных моделей данных СУБД различаются на:

  • Иерархические;
  • Сетевые;
  • Реляционные;
  • Объектно-ориентированные;
  • Объектно-реляционные.

Иерархические БД – это деревья данных, где каждый вышерасположенный объект имеет в подчинении несколько нижерасположенных. Доступ к данным осуществляется посредством движения по объектам сверху-вниз.

Сетевые отличаются от иерархических тем. Что каждый потомок в них может иметь несколько предков (множественное наследование).

Реляционные – безусловный лидер среди СУБД (93% всего рынка). Основаны на поддержке реляционных БД, то есть наборов таблиц и их отношений с возможность изменения обеих.

Объектно-ориентированные (ООСУБД) управляют абстрактными объектами, которые наделены свойствами и наделены методами для выполнения действий.

Объектно-реляционные (ОРСУБД) – реляционные СУБД, поддерживающие обьекты свойства и методы из объектно-ориентированной СУБД.

По способу доступа к БД:

  • Файл серверные.
  • Клиент-серверные;
  • Встраиваемые.

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

По степени распределённой данных:

  • Локальные: клиент и сервер – один компьютер;
  • Распределенные – клиент и сервер разные компьютеры.

Какую СУБД мы изучаем

В основу курса положена работа с СУБД от компании Microsoft – SQL Server. Это реляционная распределенная клиент-серверная СУБД. Все запросы в последующих главах написаны на диалекте языка SQL – Transact SQL.

Эта СУБД выбрана из -за ее популярности на системах на базе операционных систем Windows.

Следующий раздел посвящен тому. Что нужно для работы с этой СУБД. Откуда это взять. Как установить, настроить и приступить к работе.

Установка и настройка MS SQL Server и MS SQL Server Management Studio

Этот раздел посвящен вопросам установки, настройки и запуска СУБД MS SQL Server – для реализации сервера и установки, и настройки MS Server Management Studio – для реализации запросов на языке Transact SQL серверу.

Установка обоих компонентов будет производится на один компьютер. И несмотря на то, что SQL Server распределенная СУБД, выполнение запросов и их написание будет производится на одном и том же компьютере.

Установка ПО для работы

В данном разделе рассказывается как установить и настроить SQL Server на примере SQL Server 2016 Enterprise – самой новой версии.

Для начала скачайте установочный пакет SQL Server 2016 Enterprise с официальной страницы: https://www.microsoft.com/en-us/sql-server/sql-server-editions-express. Версия, которую вы скачали будет работать бесплатно в течении 180 дней.

Вместо нее можно использовать SQL Server 2016 Developer Edition, если у вас есть подписка MSDN. Станица для скачивания: https://www.microsoft.com/en-us/sql-server/sql-server-editions-developers.

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

Создание учетной записи

Выполните следующие инструкции чтобы создать учетную запись в Windows. Способ работает во всех ОС этого семейства начиная с 2000 и заканчивая 10.

  1. Кликните правой кнопкой мышки по значку «Мой компьютер» на рабочем столе и выберите из списка пункт «Управление». Откроется оснастка «Управление компьютером».
  2. В окне оснастке выберите пункт меню «локальные пользователи», затем выделите пункт «пользователи». Окно приобретёт вот такой вид: Управление компьютером - > пользователи
  3. Кликните правой кнопкой мыши по пустому пространству папки или по названию папки и выберите пункт «новый пользователь». Откроется такое окно:
    Новый пользователь
  4. Придумайте имя пользователя и пароль заполните их в формы и нажмите кнопку создать. Рекомендуем использовать латинские символы.

Установка SQL Server

  1. Запустите скачанный ранее пакет установки. Установщик проверит подходит ли ваш компьютер по производительности и есть ли на нем все необходимое для установки программное обеспечение. Если последнего не окажется, он его скачает. После этого откроется SQL Server Installation Server:
    SQL Server Installation Server
  2. Выберите пункт «Установка».
  3. После изменения экраны кликните на пункте «Новая установка изолированного экземпляра SQL Server». Запустится установка и установщик попытается обновиться до последней версии. Щелкните кнопку «Далее», чтобы перейти к следующему шагу:
    Установка
  4. На этапе «правил установки» проследите чтобы в окне не было красных крестиков. Если они появились, то щелкайте по выделенным строкам предупреждений и следуйте инструкциям по устранениям. Затем, щелкните кнопку «Далее». Окно установки снова изменится:
    Правила установки
  5. В появившемся окне выберите «Выполнить новую установку SQL Server 2016» и нажмите «Далее». Откроется окно регистрации продукта:
    Выполнить новую установку SQL Server 2016
  6. Введите лицензионный ключ продукта, если он у вас есть. Либо выберите Evaluation для активации 180 дневной копии.
  7. В следующем окне прочтите лицензионное соглашение, и примите его, установив флажок в поле «Я принимаю…». И нажмите «Далее»
  8. Откроется окно компонентов. Выберите пункты, установив галочки напротив:
    • Службы ядра СУБД;
    • Соединение с клиентскими средствами;
    • Компоненты документации.
    Нажмите «Далее»
    Окно компонентов
  9. В следующем окне выберите «экземпляр по умолчанию» если уже есть установленная копия SQL Server или именованный экземпляр, если устанавливаете первый раз. Введите в поле имя Экземпляра и нажмите «Далее».
    Экземпляр
  10. В следующем окне проверьте, хватает ли места на диске. Если нет, освободите его и нажмите «Далее».
  11. На этапе «Настройка Ядра СУБД» убедитесь, что выбрана строка «Проверка подлинности Windows». Если нет, выберите его. Затем добавьте в поле внизу пользователя, которого создавали перед установкой, либо добавьте текущего с помощью соответствующей кнопки Нажмите «Далее»
    Настройка Ядра СУБД
  12. На следующем окне перепроверьте все настройки установки и нажмите «далее»
  13. Понаблюдайте за установкой и нажмите «Закрыть», когда появится сообщение о завершении установки.

Установка и настройка MS SQL Server Management Studio

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

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

    https://download.microsoft.com/download/3/1/D/31D734E0-BFE8-4C33-A9DE-2392808ADEE6/SSMS-Setup-RUS.exe
  • СкачатьSQL Server Management Studio (17.0,версиякандидатhttps://download.microsoft.com/download/B/2/3/B234198E-747D-4F89-9008-F39A7E4702D3/SSMS-Setup-RUS.exe

И установите. Программа сама определит, где у вас сервер. Просто следуйте инструкциям.

Настройка и работа в Management Studio

Аутентификация через Проверка подлинности Windows

  1. Найдите Management Studio в меню «ПУСК» и запустите.
  2. В открывшемся окне соединения с сервером выберите:
    В поле тип сервиса – Ядро СУБД
    В поле имя сервера – имя сервера, которое вы указали при установке
    Проверка подлинности – Проверка подлинности Windows
  3. Нажмите кнопку «соединить».

Management Studio подключится к SQL Server и откроется основное окно программы:

Настоятельно рекомендуем изучить элемент программы под названием обозреватель объектов. Он позволяет работать с всеми структурными элементами баз данных на сервере через интерфейс похожий на проводник Windows.

SQL Management Studio

Создать новый запрос можно если кликнуть на кнопке «Создать запрос». Запрос будет создан для текущей таблицы, которая указана в выпадающем списке сверху, в данный момент master.

Если кликнуть по кнопке «создать запрос» несколько раз, то откроется несколько вкладок, как на скрине. Для каждого из них можно поменять текущую таблицу с помощью выпадающего списка.

Под полем редактора запросов располагается поле результатов. Там будут показываться результаты выполнения запроса:

Результаты выполнения запроса

Вот и все. Остальному можно научиться самостоятельно в процессе работы.

Урок 2. Составные условия

В прошлом уроке мы научились выбирать совершеннолетних пользователей с помощью простого SQL запроса.

Теперь попробуем немного уточнить запрос. Например, выберем всех совершенолетних мужчин. В таблицу я добавил дополнительное строковое поле sex, которое хранит m для мужчин и w для женщин:

Новая таблица users

idfirst_namelast_namebirthdayagesex
1ДмитрийИванов1996-12-1120m
2ОлегЛебедев2000-02-0717m
3ТимурШевченко1998-04-2719m
4СветланаИванова1993-08-0623w
5ОлегКовалев2002-02-0815m
6АлексейИванов1993-08-0523m
7АленаПроцук1997-02-2818w

Давайте добавим вывод столбца sex и оставим только мужчин. Для этого в блоке условий, который начинается со слова WHERE нужно добавить AND sex = ‘m’:

После выполнения SQL запроса получиться такая таблица:

Результат выполнения SQL-запроса

idlast_namefirst_namebirthdaysex
1ИвановДмитрий1996-12-11m
3ШевченкоТимур1998-04-27m
6ИвановАлексей1993-08-05m

Посмотрим на SQL запрос. Сейчас блок WHERE содержит составное условие: возраст больше или равен 18 годам и пол равен m. Это простое логическое выражение, которому соответствуют все записи для которых оба условия верны. То есть у которых одновременно и возраст от 18 лет и sex = «m».

Кстати, о sex = «m». Так как мы используем равенство, в результируеющей таблице в колонке sex для всех записей у нас выводится m. Это не логично, ведь мы и так знаем, что выбираем мужчин, поэтому смысла в том, что мы эту информацию выводим в таблице нет. А значит можно удалить sex из запроса. Удалим и посмотрим на результат выполнения SQL-запроса:

Результат выполнения SQL-запроса

idlast_namefirst_namebirthday
1ИвановДмитрий1996-12-11
3ШевченкоТимур1998-04-27
6ИвановАлексей1993-08-05

Строки выводятся те же, однако столбца sex больше нет.

Обратите внимание, что извлекаем мы столбцы last_name, first_name, birthday, а фильтрутем по age и sex. То есть не обязательно чтобы столбцы, которые мы получаем, совпадали со столбцами в условии. Главное, чтобы все они были в таблице.

Но вернемся к составным условиям.

Кроме операции AND (И), в условии можно применять OR (ИЛИ). Давайте заменим AND на OR, а также вернем колонки sex и age:

И посмотрим на результат:

Новая таблица users

>

idlast_namefirst_namebirthdaysexage
1ИвановДмитрий1996-12-11m20
2ЛебедевОлег2000-02-07m17
3ШевченкоТимур1998-04-27m19
4ИвановаСветлана1993-08-06w23
5КовалевОлег2002-02-08m15
6ИвановАлексей1993-08-05m23
7ПроцукАлена1997-02-28w18

Получили всех мужчин, а также женщин, которым исполнилось 18 лет. В частности в SQL-таблице две женщины старше 18 лет и все мужчины, даже те, которым меньше 18. Всё это соответствует условию ИЛИ. ИЛИ возраст от 18 лет, ИЛИ мужской пол.

Теперь переключимся на таблицу products. В ней появилось поле country, которое содержит данные о стране производителе:

Таблица products

idnamecountpricecountry
1Телевизор343200.00RU
2Микроволновая печь43200.00RU
3Холодильник312000.00UA
4Роутер11340.00US
5Компьютер26150.00US
6Утюг63200.00BL
7Пылесос114500.00UA

Давайте выберем товары, произведененные в России, Белоруссии и на Украине. Напишем SQL-запрос:

После выполнения запроса мы получим следующую таблицу:

Результат выполнения запроса

idnamecountpricecountry
1Телевизор343200.00RU
2Микроволновая печь43200.00RU
3Холодильник312000.00UA
6Утюг63200.00BL
7Пылесос114500.00UA

Разберем запрос: в блоке WHERE мы используем три условия, разделенные OR (или). Во всех трех условиях мы с помощью символа равенства сравниваем значение в столбце country с одной из стран: ИЛИ Россия, ИЛИ Украина, ИЛИ Белоруссия.

Если мы хотим получить товары еще каких-то стран, то нужно добавить еще условия OR. Это не очень удобно, так как запрос становится громоздиким.

Но его можно упростить. Кроме стандартных условий сравнения AND и OR в языке SQL есть условие принадлежности IN, которое в данном случае подходит лучше. Напишем после WHERE:

Конструкция получилась короче и понятней. И с помощью неё мы выбираем данные, в которых страна равна любом из значений перечисленных в скобках. После запуска запроса мы получим результат, аналогичный предыдущему.

Но давайте добавим к запросу еще одно условие. Например нам нужны не просто товары, а товары стоимостью до 10 000 рублей. Напишем:

И посмотрим результат:

Результат выполнения SQL-запроса

idnamecountpricecountry
2Микроволновая печь43200.00RU
6Утюг63200.00BL
7Пылесос114500.00UA

Получили новую таблицу с тремя записями, которые удовлетовряют новому условию. И в этом условии мы совместили AND и IN. То есть в SQL-запросах можно совмещать логические операции AND и OR с оператором IN. Что делает их очень гибкими.

Теперь давай попробуем выбрать товары, стоимостью от 10000 до 20000.

Условие с country уберем и напишем:

В результате получается такая таблица:

Таблица products

idnamecountpricecountry
3Холодильник312000.00UA

Выполним — получили 1 товар в этом ценовом интервале. Рассмотрим на запрос. Как видите в этой конструкции мы снова написали двойное условие по одному полю — price. И с одной строны всё логично и понятно, а с другой стороны эту конструкцию также можно упростить.

Теперь запрос звучит так: ВЫБРАТЬ все столбцы из таблицы products, в которых цена между 10000 и 20000. Звучит более чем понятно.

После запуска мы получим всё тот же один товар.

Вообще AND, OR, IN и BETWEEN — это основные конструкции для построения условий в SQL запросах и используются они в блоке WHERE. Вы можете применять их как по одиночке, так комбинируя в самых разлчных вариантах.

Следующий урок

Урок 3. Порядок AND и OR

Вы узнаете о приоритете AND и OR, а также типичных ошибках, которые возникают в SQL-запросах с несколькими условиями.

Тарифы

Базовый

Самостоятельное обучение по в любой момент

55 видео- уроков

Более 7 часов видео

Дополнительные материалы

Схемы, методички, исходные коды

Возможность скачать видео

Смотреть уроки можно даже без интернета

Доступ к курсу навсегда

Можете освежить знания через год или два

271 практическое задание

Практические занятия на тренажере

Поддержка преподавателя

Помощь в решении заданий в течение 24 часов

Сертификат о прохождении курса

Подтверждение ваших навыков

Эталонные решения

Доступ к видео-урокам + тестовый Премиум доступ к 7 урокам, 26 заданиям и поддержке преподавателя

Премиум

Теория, практика и поддержка —
залог успешного обучения

55 видео- уроков

Более 7 часов видео

Дополнительные материалы

Схемы, методички, исходные коды

Возможность скачать видео

Смотреть уроки можно даже без интернета

Доступ к курсу навсегда

Условия бесплатного тарифа могут измениться

271 практическое задание

Практические занятия на тренажере

Поддержка преподавателя

Помощь в решении заданий в течение 24 часов

Сертификат о прохождении курса

Подтверждение ваших навыков

Эталонные решения

Бесплатный тестовый Премиум доступ к 7 урокам, 26 заданиям и поддержке преподавателя

голоса
Рейтинг статьи
Ссылка на основную публикацию
Adblock
detector