HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <ul><li><a>Определение</a></li>
1 <ul><li><a>Определение</a></li>
2 <li><a>Для чего необходим</a></li>
2 <li><a>Для чего необходим</a></li>
3 <li><a>Принцип работы</a></li>
3 <li><a>Принцип работы</a></li>
4 <li><a>Операторы</a></li>
4 <li><a>Операторы</a></li>
5 <li><a>СУБД и их виды</a></li>
5 <li><a>СУБД и их виды</a></li>
6 <li><a>Преимущества и недостатки</a></li>
6 <li><a>Преимущества и недостатки</a></li>
7 </ul><p>Вся информация, с которой пользователи сталкиваются во время работы с Интернетом, хранится в специальных базах. Они называются базами данных. Там же сохраняются сведения о сотрудниках и клиентах крупных организаций/служб, научные и социологические исследования, расписания рейсов ближайшего аэропорта и многое другое.</p>
7 </ul><p>Вся информация, с которой пользователи сталкиваются во время работы с Интернетом, хранится в специальных базах. Они называются базами данных. Там же сохраняются сведения о сотрудниках и клиентах крупных организаций/служб, научные и социологические исследования, расписания рейсов ближайшего аэропорта и многое другое.</p>
8 <p>Работать с такими информационными массивами вручную очень трудно. Иногда - практически невозможно и непродуктивно. Это привело к тому, что в мире IT был придуман специальный язык для общения с базами данных (БД). Именно о нем пойдет речь ниже.</p>
8 <p>Работать с такими информационными массивами вручную очень трудно. Иногда - практически невозможно и непродуктивно. Это привело к тому, что в мире IT был придуман специальный язык для общения с базами данных (БД). Именно о нем пойдет речь ниже.</p>
9 <p>Предстоит выяснить, что собой представляет SQL, и для каких целей он используется. Также необходимо разобраться в видах СУБД, БД в SQL и принципах работы запросов. Опубликованная информация пригодится как IT-специалистам, так и работникам других сфер. А еще - обычным ПК-пользователям, планирующим работать с большими информационными объемами.</p>
9 <p>Предстоит выяснить, что собой представляет SQL, и для каких целей он используется. Также необходимо разобраться в видах СУБД, БД в SQL и принципах работы запросов. Опубликованная информация пригодится как IT-специалистам, так и работникам других сфер. А еще - обычным ПК-пользователям, планирующим работать с большими информационными объемами.</p>
10 <h2>Определение</h2>
10 <h2>Определение</h2>
11 <p>SQL (от английского Structured Query Language) - это структурированный язык запросов. Он был создан специально для получения из БД тех или иных данных. Если простыми словами описать схему работы SQL, то специалист будет формировать запрос (команду) и направлять ее к хранилищу информации. Та в свою очередь обрабатывает команду, "понимает", что именно хочет пользователь, формирует и отправляет ответ.</p>
11 <p>SQL (от английского Structured Query Language) - это структурированный язык запросов. Он был создан специально для получения из БД тех или иных данных. Если простыми словами описать схему работы SQL, то специалист будет формировать запрос (команду) и направлять ее к хранилищу информации. Та в свою очередь обрабатывает команду, "понимает", что именно хочет пользователь, формирует и отправляет ответ.</p>
12 <p>SQL нужно использовать для формирования запросов в реляционных БД. На "чистом" SQL написать полноценное приложение не получится. Это связано с тем, что его предназначение заключается во взаимодействии с базами данных и информации в них. С помощью рассматриваемого языка можно выполнять различные действия с цифровыми сведениями:</p>
12 <p>SQL нужно использовать для формирования запросов в реляционных БД. На "чистом" SQL написать полноценное приложение не получится. Это связано с тем, что его предназначение заключается во взаимодействии с базами данных и информации в них. С помощью рассматриваемого языка можно выполнять различные действия с цифровыми сведениями:</p>
13 <ul><li>управлять доступом;</li>
13 <ul><li>управлять доступом;</li>
14 <li>изменять;</li>
14 <li>изменять;</li>
15 <li>удалять;</li>
15 <li>удалять;</li>
16 <li>добавлять;</li>
16 <li>добавлять;</li>
17 <li>получать и так далее.</li>
17 <li>получать и так далее.</li>
18 </ul><p>Язык был создан в 1974 году. Несмотря на это, он все равно активно используется как IT-специалистами, так и обычными ПК-пользователями.</p>
18 </ul><p>Язык был создан в 1974 году. Несмотря на это, он все равно активно используется как IT-специалистами, так и обычными ПК-пользователями.</p>
19 <h2>Для чего необходим</h2>
19 <h2>Для чего необходим</h2>
20 <p>SQL - это не язык программирования. С помощью рассматриваемого инструмента пользователи могут формировать запросы и направлять их на серверные части клиент-серверных моделей.</p>
20 <p>SQL - это не язык программирования. С помощью рассматриваемого инструмента пользователи могут формировать запросы и направлять их на серверные части клиент-серверных моделей.</p>
21 <p>Поиск информации через Yandex или Google - это тоже своеобразная модель применения SQL. Здесь пользователь будет задавать параметры, которые его интересуют. После - отправлять запросы на серверную часть клиент-серверной модели. Далее осуществляется "магия" - обработка присланной команды. В качестве результата в поисковой выдаче появляются необходимые ссылки, соответствующие ранее сформированному запросу.</p>
21 <p>Поиск информации через Yandex или Google - это тоже своеобразная модель применения SQL. Здесь пользователь будет задавать параметры, которые его интересуют. После - отправлять запросы на серверную часть клиент-серверной модели. Далее осуществляется "магия" - обработка присланной команды. В качестве результата в поисковой выдаче появляются необходимые ссылки, соответствующие ранее сформированному запросу.</p>
22 <p>SQL может пригодиться самым разным специалистам:</p>
22 <p>SQL может пригодиться самым разным специалистам:</p>
23 <ol><li>Продуктовым менеджерам и аналитикам. Знание SQL позволяет таким работникам не зависеть от программистов. Обрабатывать и получать данные они смогут без посторонней помощи.</li>
23 <ol><li>Продуктовым менеджерам и аналитикам. Знание SQL позволяет таким работникам не зависеть от программистов. Обрабатывать и получать данные они смогут без посторонней помощи.</li>
24 <li>Тестировщикам и разработчикам. При помощи рассматриваемого языка они смогут самостоятельно проектировать базы для быстрой и надежной работы с данными. Это положительно сказывается не только на скорости создания проектов, но и на их улучшении.</li>
24 <li>Тестировщикам и разработчикам. При помощи рассматриваемого языка они смогут самостоятельно проектировать базы для быстрой и надежной работы с данными. Это положительно сказывается не только на скорости создания проектов, но и на их улучшении.</li>
25 <li>Менеджерам и различным руководителям. SQL позволяет специалистам-руководителям самостоятельно обращаться к информационным хранилищам, контролировать работу предприятия и в реальном времени получать данные о текущем положении дел.</li>
25 <li>Менеджерам и различным руководителям. SQL позволяет специалистам-руководителям самостоятельно обращаться к информационным хранилищам, контролировать работу предприятия и в реальном времени получать данные о текущем положении дел.</li>
26 </ol><p>Другим специалистам рассматриваемый язык тоже может пригодиться. В качестве примера стоит рассмотреть ученого по большим данным. Без SQL и некоторых других "технологий" он не сможет выполнять свои должностные инструкции.</p>
26 </ol><p>Другим специалистам рассматриваемый язык тоже может пригодиться. В качестве примера стоит рассмотреть ученого по большим данным. Без SQL и некоторых других "технологий" он не сможет выполнять свои должностные инструкции.</p>
27 <h2>Принцип работы</h2>
27 <h2>Принцип работы</h2>
28 <p>Для чего нужен SQL, ясно. Теперь необходимо познакомиться с ним получше. Начать стоит с рассмотрения принципов обработки запросов. Для этого лучше всего представить его путь от пользователя до тех или иных данных.</p>
28 <p>Для чего нужен SQL, ясно. Теперь необходимо познакомиться с ним получше. Начать стоит с рассмотрения принципов обработки запросов. Для этого лучше всего представить его путь от пользователя до тех или иных данных.</p>
29 <p>Он будет выглядеть так:</p>
29 <p>Он будет выглядеть так:</p>
30 <ol><li>Пользователь - тот, кто посылает запрос.</li>
30 <ol><li>Пользователь - тот, кто посылает запрос.</li>
31 <li>Клиент.</li>
31 <li>Клиент.</li>
32 <li>Система управления.</li>
32 <li>Система управления.</li>
33 <li>База данных. Выполняет роль своеобразного хранилища информации.</li>
33 <li>База данных. Выполняет роль своеобразного хранилища информации.</li>
34 <li>Таблица с базами данных.</li>
34 <li>Таблица с базами данных.</li>
35 </ol><p>Данные для работы с рассматриваемым языком хранятся в так называемых таблицах. Они обладают определенным устройством, но об этом позже. Сначала просто нужно представить их.</p>
35 </ol><p>Данные для работы с рассматриваемым языком хранятся в так называемых таблицах. Они обладают определенным устройством, но об этом позже. Сначала просто нужно представить их.</p>
36 <p>На пути от пользователя к таблице будут встречаться разнообразные посредники:</p>
36 <p>На пути от пользователя к таблице будут встречаться разнообразные посредники:</p>
37 <ol><li>Клиент. Так называется способ введения запроса. В случае с поисковыми системами клиентами выступают поисковые строки в браузере. Там пользователь должен ввести сформулированный заранее запрос.</li>
37 <ol><li>Клиент. Так называется способ введения запроса. В случае с поисковыми системами клиентами выступают поисковые строки в браузере. Там пользователь должен ввести сформулированный заранее запрос.</li>
38 <li>Система управления базами данных (СУБД). Представляет собой комплекс программ, открывающих возможность управления данными. Такие системы помогают таблицам понять, что от них нужно пользователю, а пользователю - что именно ему отвечают таблицы.</li>
38 <li>Система управления базами данных (СУБД). Представляет собой комплекс программ, открывающих возможность управления данными. Такие системы помогают таблицам понять, что от них нужно пользователю, а пользователю - что именно ему отвечают таблицы.</li>
39 <li>База данных. Это система хранения таблиц, в которой они связаны друг с другом. БД сама по себе не умеет оперировать информацией. Оно представляет собой простое цифровое информационное хранилище. В ней у каждого объекта имеется свое собственное место.</li>
39 <li>База данных. Это система хранения таблиц, в которой они связаны друг с другом. БД сама по себе не умеет оперировать информацией. Оно представляет собой простое цифровое информационное хранилище. В ней у каждого объекта имеется свое собственное место.</li>
40 </ol><p>Теперь, когда принцип работы SQL-запроса понятен, стоит изучить операторы упомянутого ранее языка. Без них взаимодействие с БД не представляется возможным.</p>
40 </ol><p>Теперь, когда принцип работы SQL-запроса понятен, стоит изучить операторы упомянутого ранее языка. Без них взаимодействие с БД не представляется возможным.</p>
41 <h2>Операторы</h2>
41 <h2>Операторы</h2>
42 <p>SQL-операторы помогают пользователям работать с данными. Они представляют собой специальные слова или символы, используемые для выполнения тех или иных операций. В качестве примера можно привести выбор из множества по конкретному параметру.</p>
42 <p>SQL-операторы помогают пользователям работать с данными. Они представляют собой специальные слова или символы, используемые для выполнения тех или иных операций. В качестве примера можно привести выбор из множества по конкретному параметру.</p>
43 <p>Если из всех видов пиццы нужно отсортировать те, в которых есть грибы, необходимо использовать оператор SELECT. Это - выбор с параметром. Он является наиболее распространенным.</p>
43 <p>Если из всех видов пиццы нужно отсортировать те, в которых есть грибы, необходимо использовать оператор SELECT. Это - выбор с параметром. Он является наиболее распространенным.</p>
44 <p>Все операторы языка делятся на несколько групп. Классификация приводится в зависимости от задач, с которыми предстоит сталкиваться "командам":</p>
44 <p>Все операторы языка делятся на несколько групп. Классификация приводится в зависимости от задач, с которыми предстоит сталкиваться "командам":</p>
45 <ol><li>DDL или Data Definition Language. К данной категории относятся операторы определения информации. Они взаимодействуют с объектами - с целыми таблицами сразу. Если базу требуется дополнить новой таблицей с новыми данными или убрать одну из них с ошибочными сведениями, предстоит использовать соответствующий операторный набор. В него включены команды: CREATE (создание объекта в БД), ALTER (изменение элемента), DROP (удаление).</li>
45 <ol><li>DDL или Data Definition Language. К данной категории относятся операторы определения информации. Они взаимодействуют с объектами - с целыми таблицами сразу. Если базу требуется дополнить новой таблицей с новыми данными или убрать одну из них с ошибочными сведениями, предстоит использовать соответствующий операторный набор. В него включены команды: CREATE (создание объекта в БД), ALTER (изменение элемента), DROP (удаление).</li>
46 <li>DML или Data Manipulation Language. Операторы манипуляции данными. Они работают непосредственно с табличным содержимым: строками, значениями, атрибутами. С их помощью вносятся изменения в конкретное значение. В качестве примера можно привести изменение поля в колонке "Фамилия" в строке с данными работницы, вышедшей замуж. К таким командам относят: SELECT (выбор с условием), UPDATE (изменение существующих данных), INSERT (добавление новой информации), DELETE (удаление информации).</li>
46 <li>DML или Data Manipulation Language. Операторы манипуляции данными. Они работают непосредственно с табличным содержимым: строками, значениями, атрибутами. С их помощью вносятся изменения в конкретное значение. В качестве примера можно привести изменение поля в колонке "Фамилия" в строке с данными работницы, вышедшей замуж. К таким командам относят: SELECT (выбор с условием), UPDATE (изменение существующих данных), INSERT (добавление новой информации), DELETE (удаление информации).</li>
47 <li>DCL или Data Control Language. Оператор определения доступа к данным. Отвечает за то, кто из пользователей имеет право отправлять запросы к базе SQL, менять объекты и значения. Сюда относят: GRANT (предоставление доступа к объекту), DENY (приоритетный над разрешением запрет), REVOKE (отзыв ранее выданного разрешения).</li>
47 <li>DCL или Data Control Language. Оператор определения доступа к данным. Отвечает за то, кто из пользователей имеет право отправлять запросы к базе SQL, менять объекты и значения. Сюда относят: GRANT (предоставление доступа к объекту), DENY (приоритетный над разрешением запрет), REVOKE (отзыв ранее выданного разрешения).</li>
48 <li>TCL или Transaction Control Language. Язык управления транзакциями. Если все команды выполнены, транзакция будет успешной. Если же где-то произошла ошибка, транзакция откатывается назад, отменяя все выполненные операции. Сюда относят: BEGIN TRANSACTION (начало транзакции), ROLLBACK TRANSACTION (откат), COMMIT TRANSACTION - изменение команд внутри транзакции и SAVE TRANSACTION - указание промежуточной точки сохранения.</li>
48 <li>TCL или Transaction Control Language. Язык управления транзакциями. Если все команды выполнены, транзакция будет успешной. Если же где-то произошла ошибка, транзакция откатывается назад, отменяя все выполненные операции. Сюда относят: BEGIN TRANSACTION (начало транзакции), ROLLBACK TRANSACTION (откат), COMMIT TRANSACTION - изменение команд внутри транзакции и SAVE TRANSACTION - указание промежуточной точки сохранения.</li>
49 </ol><p>Без перечисленных операторов SQL просто не работает. Язык будет представлять собой набор букв и слов, которые никак не обрабатываются и ни за что не отвечают.</p>
49 </ol><p>Без перечисленных операторов SQL просто не работает. Язык будет представлять собой набор букв и слов, которые никак не обрабатываются и ни за что не отвечают.</p>
50 <h2>СУБД и их виды</h2>
50 <h2>СУБД и их виды</h2>
51 <p>Сами по себе электронные таблицы и информационные базы не могут выполнять операции. СУБД предоставляет такую возможность. В них допускается создавать новые таблицы, избавляться от ненужных данных, настраивать ключи и обрабатывать запросы.</p>
51 <p>Сами по себе электронные таблицы и информационные базы не могут выполнять операции. СУБД предоставляет такую возможность. В них допускается создавать новые таблицы, избавляться от ненужных данных, настраивать ключи и обрабатывать запросы.</p>
52 <p>К основным задачам и целям СУБД относят:</p>
52 <p>К основным задачам и целям СУБД относят:</p>
53 <ul><li>поддержку языков БД;</li>
53 <ul><li>поддержку языков БД;</li>
54 <li>организацию непосредственного управления данными;</li>
54 <li>организацию непосредственного управления данными;</li>
55 <li>управление буферами оперативной памяти;</li>
55 <li>управление буферами оперативной памяти;</li>
56 <li>резервное копирование и восстановление БД после сбоев и иных неполадок;</li>
56 <li>резервное копирование и восстановление БД после сбоев и иных неполадок;</li>
57 <li>управление транзакциями.</li>
57 <li>управление транзакциями.</li>
58 </ul><p>СУБД бывают коммерческими или с открытым исходным кодом. Первые платные и наделенные широкими функциональными возможностями. Вторые разрешено свободно скачивать и использовать в своих проектах.</p>
58 </ul><p>СУБД бывают коммерческими или с открытым исходным кодом. Первые платные и наделенные широкими функциональными возможностями. Вторые разрешено свободно скачивать и использовать в своих проектах.</p>
59 <p>Наиболее распространенными для работы с SQL выступают следующие СУБД:</p>
59 <p>Наиболее распространенными для работы с SQL выступают следующие СУБД:</p>
60 <ol><li>PostgreSQL. Объектно-ориентированная система. Умеет обрабатывать данные в качестве абстракций. Каждый объект здесь может обладать собственными характеристиками и уникальными методами взаимодействия с другими объектами.</li>
60 <ol><li>PostgreSQL. Объектно-ориентированная система. Умеет обрабатывать данные в качестве абстракций. Каждый объект здесь может обладать собственными характеристиками и уникальными методами взаимодействия с другими объектами.</li>
61 <li>MySQL. Еще одна СУБД для работы с SQL. Является очень простой в плане изучения. Функциональные ее возможности приятно радуют. Чаще всего MySQL используется для сайтов и веб-приложений. Встречается в системах управления контентом сайтов (CMS) и на сервисах с возможностью регистрации пользователей. Это самая безопасная и высокоскоростная СУБД.</li>
61 <li>MySQL. Еще одна СУБД для работы с SQL. Является очень простой в плане изучения. Функциональные ее возможности приятно радуют. Чаще всего MySQL используется для сайтов и веб-приложений. Встречается в системах управления контентом сайтов (CMS) и на сервисах с возможностью регистрации пользователей. Это самая безопасная и высокоскоростная СУБД.</li>
62 <li>SQLite. Облегченная встраиваемая версия СУБД для работы с SQL. Возможности делиться правами доступа тут нет, зато этот недостаток перекрывается мощностью и скоростью работы системы. SQLite лучше всего подходит для обработки запросов на сайтах с небольшим трафиком. Эта СУБД встречается в однопользовательских мобильных проектах.</li>
62 <li>SQLite. Облегченная встраиваемая версия СУБД для работы с SQL. Возможности делиться правами доступа тут нет, зато этот недостаток перекрывается мощностью и скоростью работы системы. SQLite лучше всего подходит для обработки запросов на сайтах с небольшим трафиком. Эта СУБД встречается в однопользовательских мобильных проектах.</li>
63 </ol><p>Другие СУБД тоже встречаются, но они в большей степени являются коммерческими: Oracle, Google Cloud Spanner и так далее.</p>
63 </ol><p>Другие СУБД тоже встречаются, но они в большей степени являются коммерческими: Oracle, Google Cloud Spanner и так далее.</p>
64 <h2>Преимущества и недостатки</h2>
64 <h2>Преимущества и недостатки</h2>
65 <p>Зачем нужен SQL, понятно. Теперь необходимо познакомиться с его преимуществами и недостатками.</p>
65 <p>Зачем нужен SQL, понятно. Теперь необходимо познакомиться с его преимуществами и недостатками.</p>
66 <p>К сильным сторонам SQL относят:</p>
66 <p>К сильным сторонам SQL относят:</p>
67 <ol><li>Декларативность. Программист сам указывает, какие манипуляции необходимо выполнить. Способ их реализации выбирается системой автоматически.</li>
67 <ol><li>Декларативность. Программист сам указывает, какие манипуляции необходимо выполнить. Способ их реализации выбирается системой автоматически.</li>
68 <li>Наличие стандартов. Они стабилизируют упомянутый язык.</li>
68 <li>Наличие стандартов. Они стабилизируют упомянутый язык.</li>
69 <li>Простоту адаптации к определенным СУБД. Обычно составлять сложные конструкции на SQL для работы с данными не приходится. Простые формулировки операций с легкостью корректируются при необходимости переноса программы.</li>
69 <li>Простоту адаптации к определенным СУБД. Обычно составлять сложные конструкции на SQL для работы с данными не приходится. Простые формулировки операций с легкостью корректируются при необходимости переноса программы.</li>
70 </ol><p>К недостаткам SQL относят отсутствие поддержки пользовательских функций, а также циклов и рекурсии. Пути избавления от указанных ограничений есть, но они требуют определенного опыта и знаний у программиста.</p>
70 </ol><p>К недостаткам SQL относят отсутствие поддержки пользовательских функций, а также циклов и рекурсии. Пути избавления от указанных ограничений есть, но они требуют определенного опыта и знаний у программиста.</p>
71 <p>Стандарт языка является сложным. Он обладает огромным объемом. Сейчас можно встретить множество отличающихся друг от друга реализаций SQL. Из-за этого программы обычно тяжело переносятся между СУБД без изменения кода.</p>
71 <p>Стандарт языка является сложным. Он обладает огромным объемом. Сейчас можно встретить множество отличающихся друг от друга реализаций SQL. Из-за этого программы обычно тяжело переносятся между СУБД без изменения кода.</p>
72 <p>Чтобы лучше научиться работать с SQL и системами управления БД, рекомендуется пройти дистанционные компьютерные курсы. На них в срок от нескольких месяцев до года пользователи смогут получить необходимые им знания. Образовательный процесс сопровождается практикой и формированием портфолио. В конце курса каждый его завершивший получит электронный сертификат установленного образца.</p>
72 <p>Чтобы лучше научиться работать с SQL и системами управления БД, рекомендуется пройти дистанционные компьютерные курсы. На них в срок от нескольких месяцев до года пользователи смогут получить необходимые им знания. Образовательный процесс сопровождается практикой и формированием портфолио. В конце курса каждый его завершивший получит электронный сертификат установленного образца.</p>
73 <p><em>Прокачать <a>навыки работы с базами данных</a> можно на курсах Otus.</em></p>
73 <p><em>Прокачать <a>навыки работы с базами данных</a> можно на курсах Otus.</em></p>
74  
74