HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Для работы с данными в СУБД существует специальный язык - SQL. В этом уроке мы познакомимся с ним и его базовыми возможностями.</p>
1 <p>Для работы с данными в СУБД существует специальный язык - SQL. В этом уроке мы познакомимся с ним и его базовыми возможностями.</p>
2 <h2>Что такое язык SQL</h2>
2 <h2>Что такое язык SQL</h2>
3 <p><strong>SQL (Structured Query Language)</strong>- это язык, который помогает управлять данными в СУБД.</p>
3 <p><strong>SQL (Structured Query Language)</strong>- это язык, который помогает управлять данными в СУБД.</p>
4 <p>SQL позволяет:</p>
4 <p>SQL позволяет:</p>
5 <ul><li>Управлять данными внутри таблицы - добавлять их, редактировать, выбирать.</li>
5 <ul><li>Управлять данными внутри таблицы - добавлять их, редактировать, выбирать.</li>
6 <li>Менять структуру самих таблиц и баз данных.</li>
6 <li>Менять структуру самих таблиц и баз данных.</li>
7 </ul><p>Язык SQL разрабатывается независимо от СУБД и имеет собственный стандарт, который реализуют конкретные базы данных. Поэтому на базовом уровне все реляционные базы данных работают примерно одинаково.</p>
7 </ul><p>Язык SQL разрабатывается независимо от СУБД и имеет собственный стандарт, который реализуют конкретные базы данных. Поэтому на базовом уровне все реляционные базы данных работают примерно одинаково.</p>
8 <p>В курсе мы будем использовать СУБД PostgreSQL, но когда вы научитесь работать с одной СУБД, сможете спокойно переключиться на другую.</p>
8 <p>В курсе мы будем использовать СУБД PostgreSQL, но когда вы научитесь работать с одной СУБД, сможете спокойно переключиться на другую.</p>
9 <h2>Создание базы данных</h2>
9 <h2>Создание базы данных</h2>
10 <p>Чтобы начать работать с базой данных, ее нужно создать. Чтобы это сделать, нужно установить СУБД на специальный компьютер -<strong>сервер</strong>.</p>
10 <p>Чтобы начать работать с базой данных, ее нужно создать. Чтобы это сделать, нужно установить СУБД на специальный компьютер -<strong>сервер</strong>.</p>
11 <p>Сама по себе СУБД может не иметь графического интерфейса, в таком случае мы используем<strong>запросы</strong>на языке SQL.</p>
11 <p>Сама по себе СУБД может не иметь графического интерфейса, в таком случае мы используем<strong>запросы</strong>на языке SQL.</p>
12 <p>Для начала создадим базу данных для школы Хекслет с помощью такой команды:</p>
12 <p>Для начала создадим базу данных для школы Хекслет с помощью такой команды:</p>
13 <h2>Как создать таблицу</h2>
13 <h2>Как создать таблицу</h2>
14 <p>Теперь у нас есть база данных - можем создать в ней первую таблицу.</p>
14 <p>Теперь у нас есть база данных - можем создать в ней первую таблицу.</p>
15 <p>Возьмем для примера таблицу users и ее структуру:</p>
15 <p>Возьмем для примера таблицу users и ее структуру:</p>
16 <p>Чтобы создать таблицу, нужно выполнить такой запрос:</p>
16 <p>Чтобы создать таблицу, нужно выполнить такой запрос:</p>
17 <p>Вы могли заметить, что запросы на языке SQL похожи на обычный текст на английском языке. Если перевести запросы, мы получим такие предложения:</p>
17 <p>Вы могли заметить, что запросы на языке SQL похожи на обычный текст на английском языке. Если перевести запросы, мы получим такие предложения:</p>
18 <ul><li>"Создать базу данных hexlet_db"</li>
18 <ul><li>"Создать базу данных hexlet_db"</li>
19 <li>"Создать таблицу users со следующей структурой"</li>
19 <li>"Создать таблицу users со следующей структурой"</li>
20 </ul><p>Дело в том, что SQL - это<strong>декларативный язык программирования</strong>. Он описывает, что нужно получить, не объясняя, как именно нужно прийти к такому результату.</p>
20 </ul><p>Дело в том, что SQL - это<strong>декларативный язык программирования</strong>. Он описывает, что нужно получить, не объясняя, как именно нужно прийти к такому результату.</p>
21 <p>Теперь мы можем добавить нескольких пользователей в таблицу:</p>
21 <p>Теперь мы можем добавить нескольких пользователей в таблицу:</p>
22 <p>Вот такая таблица у нас получится:</p>
22 <p>Вот такая таблица у нас получится:</p>
23 <p>После добавления мы заметили ошибку в данных - у пользователя Maureen Romaguera неверно указана электронная почта. Давайте исправим эту ошибку. Напишем запрос на редактирование записи:</p>
23 <p>После добавления мы заметили ошибку в данных - у пользователя Maureen Romaguera неверно указана электронная почта. Давайте исправим эту ошибку. Напишем запрос на редактирование записи:</p>
24 <p>Снова запрос очень похож на инструкцию: "Обнови таблицу users - у пользователя по фамилии Romaguera значение в поле email должно быть следующим...". Посмотрим на пример запроса, который извлекает информацию о пользователях из этой таблицы:</p>
24 <p>Снова запрос очень похож на инструкцию: "Обнови таблицу users - у пользователя по фамилии Romaguera значение в поле email должно быть следующим...". Посмотрим на пример запроса, который извлекает информацию о пользователях из этой таблицы:</p>
25 <p>Этот запрос вернет все строки в таблице:</p>
25 <p>Этот запрос вернет все строки в таблице:</p>
26 <p><a>View On DB Fiddle</a></p>
26 <p><a>View On DB Fiddle</a></p>
27 <h2>Как удалить запись</h2>
27 <h2>Как удалить запись</h2>
28 <p>Еще одна достаточно частая операция - удаление записей. Давайте удалим нашего пользователя из таблицы:</p>
28 <p>Еще одна достаточно частая операция - удаление записей. Давайте удалим нашего пользователя из таблицы:</p>
29 <p>И снова выведем всю таблицу:</p>
29 <p>И снова выведем всю таблицу:</p>
30 <p>Получилась такая таблица:</p>
30 <p>Получилась такая таблица:</p>
31 <p><a>View On DB Fiddle</a></p>
31 <p><a>View On DB Fiddle</a></p>
32 <h2>Как выбрать запись</h2>
32 <h2>Как выбрать запись</h2>
33 <p>Обычно данные нужны не все сразу, а по частям. Например, когда мы заходим в описание одного курса на Хекслете, то ожидаем увидеть информацию только по этому курсу, а не по всем курсам сразу.</p>
33 <p>Обычно данные нужны не все сразу, а по частям. Например, когда мы заходим в описание одного курса на Хекслете, то ожидаем увидеть информацию только по этому курсу, а не по всем курсам сразу.</p>
34 <p>Чтобы выбрать определенные строки, можно добавить в запрос условия. Например, выберем пользователей с именем Ramiro:</p>
34 <p>Чтобы выбрать определенные строки, можно добавить в запрос условия. Например, выберем пользователей с именем Ramiro:</p>
35 <p><a>View On DB Fiddle</a></p>
35 <p><a>View On DB Fiddle</a></p>
36 <p>Все примеры из этого урока - лишь вершина айсберга возможностей языка SQL. На самом деле, язык SQL позволяет строить более сложные запросы с несколькими условиями.</p>
36 <p>Все примеры из этого урока - лишь вершина айсберга возможностей языка SQL. На самом деле, язык SQL позволяет строить более сложные запросы с несколькими условиями.</p>
37 <h2>Удаление таблиц</h2>
37 <h2>Удаление таблиц</h2>
38 <p>Чтобы удалить таблицу, выполняется запрос DROP:</p>
38 <p>Чтобы удалить таблицу, выполняется запрос DROP:</p>
39 <p><a>View On DB Fiddle</a></p>
39 <p><a>View On DB Fiddle</a></p>
40 <p>Будьте внимательны, так как удаление таблицы приводит к безвозвратной потере данных.</p>
40 <p>Будьте внимательны, так как удаление таблицы приводит к безвозвратной потере данных.</p>
41 <h2>Комментарии в запросах</h2>
41 <h2>Комментарии в запросах</h2>
42 <p>Представьте, что вы работаете над проектом в команде. В процессе работы вы можете создавать сложные запросы, которые могут быть не совсем очевидны для других членов команды. В таких ситуациях крайне важно, чтобы ваш код был понятен вашим коллегам. Здесь на помощь приходят комментарии. Они помогают объяснить логику запросов, описать структуру таблиц или указать, зачем тот или иной фрагмент кода был написан.</p>
42 <p>Представьте, что вы работаете над проектом в команде. В процессе работы вы можете создавать сложные запросы, которые могут быть не совсем очевидны для других членов команды. В таких ситуациях крайне важно, чтобы ваш код был понятен вашим коллегам. Здесь на помощь приходят комментарии. Они помогают объяснить логику запросов, описать структуру таблиц или указать, зачем тот или иной фрагмент кода был написан.</p>
43 <p>Комментарии в SQL позволяют вам добавлять пояснения и заметки к вашему запросу. При этом сами они не являются частью запроса, не влияют на его выполнение и игнорируются интерпретатором.</p>
43 <p>Комментарии в SQL позволяют вам добавлять пояснения и заметки к вашему запросу. При этом сами они не являются частью запроса, не влияют на его выполнение и игнорируются интерпретатором.</p>
44 <p>В SQL существует два основных вида комментариев: однострочные и многострочные.</p>
44 <p>В SQL существует два основных вида комментариев: однострочные и многострочные.</p>
45 <p>Однострочные комментарии начинаются с двух дефисов --. Все, что находится в строчке после этих символов, считается комментарием, и будет игнорироваться при выполнении запроса.</p>
45 <p>Однострочные комментарии начинаются с двух дефисов --. Все, что находится в строчке после этих символов, считается комментарием, и будет игнорироваться при выполнении запроса.</p>
46 <p>Многострочные комментарии заключаются между символами /* и */. Все, что находится между этими символами считается комментарием. Такой тип комментариев может занимать несколько строк и позволяет добавлять более длинные пояснения.</p>
46 <p>Многострочные комментарии заключаются между символами /* и */. Все, что находится между этими символами считается комментарием. Такой тип комментариев может занимать несколько строк и позволяет добавлять более длинные пояснения.</p>
47 <h2>Выводы</h2>
47 <h2>Выводы</h2>
48 <p>В этом уроке мы познакомились с базовыми возможностями языка SQL. Мы рассмотрели этапы создания базы данных и узнали, как гибко можно применять SQL.</p>
48 <p>В этом уроке мы познакомились с базовыми возможностями языка SQL. Мы рассмотрели этапы создания базы данных и узнали, как гибко можно применять SQL.</p>
49 <p>Дальше в курсе мы будем на практике применять стандартные возможности языка для выборки данных из таблиц.</p>
49 <p>Дальше в курсе мы будем на практике применять стандартные возможности языка для выборки данных из таблиц.</p>