Установка SQL Server и подключение из DataGrip
Курс MS SQL с нуля · Урок 1 из 12 · Часть 1. Среда и первые запросы
Урок 1 ставит три рабочие вещи: запущенный SQL Server, подключённую консоль DataGrip и первый выполненный запрос. Всё остальное — тренировка чтения ошибок: именно на них новички теряют больше всего времени.
Понадобится компьютер с Windows и права администратора на нём. Установка Express-редакции уроком не засчитывается: часть следующих занятий опирается на возможности полной редакции.
Содержание
1. Что вы освоите
К концу урока вы:
- устанавливаете SQL Server Developer Edition со смешанной проверкой подлинности;
- подключаете DataGrip к экземпляру по умолчанию и объясняете каждое поле;
- выполняете запрос в консоли и переключаете контекст базы данных;
- читаете сообщение об ошибке дословно: номер, тяжесть, строка, текст.
2. Сервер, экземпляр и база: термины
Сервер — служба, которая хранит данные и выполняет запросы. Экземпляр — отдельный работающий комплект сервера; экземпляр по умолчанию не имеет имени и доступен по адресу localhost. Внутри экземпляра живут системные базы (master, model, msdb, tempdb) и пользовательские — наша учебная TechStore появится в уроке 2.
DataGrip — клиент: посылает серверу текст запроса и показывает результат. Сервер и DataGrip — разные программы; закрытие DataGrip сервер не останавливает.
3. Установка SQL Server Developer Edition
Установка занимает около получаса. Последовательность действий:
- Скачайте Developer Edition со страницы Microsoft из раздела источников (не Express: у той есть пределы по памяти и нет части инструментов).
- В установщике выберите тип «Пользовательский» — видны все шаги.
- Шаг экземпляра: оставьте экземпляр по умолчанию — так проще подключаться.
- Шаг проверки подлинности: смешанный режим, пароль входа sa запишите, текущего пользователя Windows добавьте в администраторы сервера.
- Завершите установку; перезагрузка — по требованию установщика.
Проверка без SQL
служба в Windows
Win+R, затем services.msc: служба SQL Server (MSSQLSERVER) обязана быть в состоянии «Выполняется». Если стоит иначе — правая кнопка, «Запустить». Эта проверка ловит большинство проблем дохода до DataGrip.
4. Подключение DataGrip
В Database Explorer слева: + → Data Source → Microsoft SQL Server. Поля подключения к экземпляру по умолчанию:
| Поле | Значение | Пояснение |
|---|---|---|
| Host | localhost | свой компьютер; допустимо 127.0.0.1 |
| Port | 1433 | стандартный порт сервера по умолчанию |
| Authentication | User & Password | user sa и пароль из шага установки; альтернатива — Windows Authentication |
| Database | master | стартовая системная база; позже переключимся |
При первом подключении DataGrip предложит скачать драйвер — соглашайтесь. Кнопка Test Connection должна стать зелёной, только после этого — OK.
5. Первая консоль и первый запрос
Правый щелчок по источнику → New → Query Console. Первый запрос:
Чистый код
SELECT 1;
GO
- Построчный разбор
Ниже приведён тот же фрагмент с пояснением после каждой смысловой строки. Строки, которые начинаются с двух дефисов и стрелки вправо, содержат комментарий преподавателя. Эти строки не являются обязательной частью программы.
SELECT 1; -- → простейший запрос: сервер вычисляет константу, обращения к таблицам не требуется GO -- → конец пакета: разделитель понимает клиент (DataGrip, SSMS), серверу он не отправляетсяSQL
Результат открывается внизу. Рабочие сочетания клавиш всего курса:
| Клавиши | Действие |
|---|---|
| Ctrl+Enter | выполнить оператор под курсором или выделенный фрагмент |
| Ctrl+A, затем Ctrl+Enter | выполнить файл целиком |
| Ctrl+Shift+F10 | выбор схемы и базы консоли |
| двойной Shift | поиск любого действия или настройки IDE |
Чтение сообщений об ошибках
Сервер отвечает на ошибки строкой вида:
Чистый код
Msg 208, Level 16, State 1, Line 3
Invalid object name 'dbo.Order'.
- Построчный разбор
Ниже приведён тот же фрагмент с пояснением после каждой смысловой строки. Строки, которые начинаются с двух дефисов и стрелки вправо, содержат комментарий преподавателя. Эти строки не являются обязательной частью программы.
Msg 208, Level 16, State 1, Line 3 -- → номер ошибки 208, тяжесть 16 (ошибка текста пользователя), строка пакета 3 Invalid object name 'dbo.Order'. -- → причина дословно: объект с таким именем в текущей базе не найдентекст ошибки
Расшифровка по полям:
- Msg 208 — номер ошибки; по нему ищут в документации;
- Level 16 — тяжесть; значения от 11 до 16 — ошибки синтаксиса и имён, выше — уже административные;
- Line 3 — строка пакета, на которой сервер остановился;
- текст — человекочитаемая причина: «сервер не нашёл объект с таким именем».
Получить такое сообщение предельно просто и безопасно: выполнить в консоли на базе master запрос SELECT * FROM dbo.Customers; — таблицы с таким именем в master нет, и сервер отвечает ровно Msg 208 из примера выше. Именно на этом запросе построена задача 1.5.
6. Задачи и эталонные решения
Шесть задач в консоли на контексте master.
- версия, редакция и уровень обновления сервера — одним запросом;
- список баз экземпляра с датами создания от старой к новой;
- порядок сортировки сервера и расшифровка букв CI и AS;
- текущие дата и время двумя функциями: устаревшей и рекомендуемой;
- сознательно получить Msg 208 рецептом из урока: запрос SELECT * FROM dbo.Customers; на контексте базы master, затем разбор каждого поля сообщения;
- переключить контекст консоли на другую базу и подтвердить функцией DB_NAME.
Эталоны урока
открывать после самостоятельной попытки
Чистый код
SELECT @@VERSION AS version_string,
SERVERPROPERTY('ProductVersion') AS product_version,
SERVERPROPERTY('Edition') AS edition,
SERVERPROPERTY('ProductLevel') AS product_level;
GO
SELECT name, create_date, state_desc
FROM sys.databases
ORDER BY create_date;
GO
SELECT SERVERPROPERTY('Collation') AS server_collation;
GO
SELECT GETDATE() AS classic_now,
SYSDATETIME() AS precise_now;
GO
SELECT DB_NAME() AS current_database;
GO
- Построчный разбор
Ниже приведён тот же фрагмент с пояснением после каждой смысловой строки. Строки, которые начинаются с двух дефисов и стрелки вправо, содержат комментарий преподавателя. Эти строки не являются обязательной частью программы.
SELECT @@VERSION AS version_string, -- → строка версии целиком: человекочитаемо SERVERPROPERTY('ProductVersion') AS product_version, -- → точный номер: 16.0.x соответствует SQL Server 2022 SERVERPROPERTY('Edition') AS edition, -- → редакция: ожидание курса — Developer Edition SERVERPROPERTY('ProductLevel') AS product_level; -- → уровень обновления: выпуск RTM или номер накопительного пакета CU GO SELECT name, create_date, state_desc -- → имя базы, дата её создания, состояние FROM sys.databases -- → системное представление: одна строка на базу экземпляра ORDER BY create_date; -- → системные базы старше всех и оказываются наверху списка GO SELECT SERVERPROPERTY('Collation') AS server_collation; -- → порядок сортировки сервера по умолчанию; CI — без учёта регистра, AS — с учётом диакритики GO SELECT GETDATE() AS classic_now, -- → старая функция времени: точность до сотых долей секунды SYSDATETIME() AS precise_now; -- → рекомендуемая: тип datetime2 с точностью до долей микросекунд GO SELECT DB_NAME() AS current_database; -- → база текущего сеанса: переключается через Ctrl+Shift+F10 GOрешения задач 1.1–1.4, 1.6
7. Типичные ошибки урока
- Test Connection красный — протокол TCP/IP выключен; включается в Configuration Manager с перезапуском службы.
- Login failed for user sa (Msg 18456) — сервер без смешанного режима; лечится Windows-подключением и включением режима в свойствах сервера; сообщение намеренно умалчивает причину.
- Пустой Database Explorer — схемы не выбраны: Properties → Schemas → master и tempdb.
- Msg 208 на простом запросе — консоль смотрит не в ту базу; проверка функцией DB_NAME, лечение переключением контекста.
- Запрос «завис» — чаще всего он не выполнен, а выполняется; индикатор внизу панели и красная кнопка остановки.
- Путаница имени экземпляра — localhost\SQLEXPRESS к экземпляру по умолчанию не подключится: имя нужно только именованному экземпляру.
8. Чек-лист практики и источники
Чек-лист первого занятия
отметки делаются по факту
Источники для углубления:
- Загрузка SQL Server Developer Edition;
- Документация DataGrip: подключение к SQL Server;
- SERVERPROPERTY: список свойств экземпляра.
Проверено: 23.10.2026
↑ К оглавлению