При работе с данными в информационных технологиях используются таблицы. Они объединяются в информационные базы (БД), управляемые специальным программным обеспечением – СУБД. В таком программном обеспечении необходимо формировать запросы для выполнения тех или иных команд.
Сегодня предстоит познакомиться с языком запросов и управления информационными таблицами SQL. Он является наиболее известным и распространенным инструментом. В качестве примера будет взята СУБД MySQL.
Ниже представлена краткая характеристика упомянутой системы управления базами данных, ее особенности, а также ключевые команды SQL для работы с таблицами. Эти сведения пригодятся не только IT-специалистам, но и другим ПК-пользователям. В идеале – всем, кто работает с цифровыми таблицами и большими информационными объемами.
MySQL – это…
MySQL – реляционная система управления базами данных, распространяемая совершенно свободно (бесплатно). Это наиболее распространенное и популярное программное обеспечение при работе с информационными таблицами. Оно отличается своей гибкостью, легкостью и удобством в плане эксплуатации.
Термин «реляционный» указывает на то, что базы будут представлены в виде связанной информации. Они описываются как некоторый набор связей.
Для чего необходима MySQL
MySQL – удобный инструмент для обработки информационных таблиц. Он используется для разных целей:
- получение быстрого доступа к БД;
- корректное и грамотное хранение информации в пределах сервера;
- оперативный поиск тех или иных сведений при помощи языка запросов SQL;
- идентификация и обработка отдельной информации, а также ее преобразование и отправка получателю;
- предоставление возможности создания, удаления, редактирования уже имеющихся в таблицах сведений;
- отправка транзакций – «пакетов», состоящих из нескольких запросов к БД;
- выдача разнообразных прав доступа пользователям;
- множественный доступ к БД с различных устройств;
- контроль состояния электронных информационных таблиц;
- возможность контролировать версии БД: создавать бэкапы, обновлять БД, а также осуществлять ее откат.
MySQL – удобный и современный инструмент для обработки информационных связанных таблиц (БД). Это программное обеспечение имеет как преимущества, так и недостатки. Знать о них необходимо еще до того, как пользователь приступит к более детальному изучению SQL на основе соответствующей СУБД.
Преимущества и недостатки
MySQL – программное обеспечение со своими сильными и слабыми сторонами. К ее основным преимуществам можно отнести:
- Высокую степень гибкости. Данный инструмент легко настраивается под индивидуальные потребности и особенности конкретного проекта. Для MySQL поддерживается огромное количество расширений и плагинов. С установкой СУБД на хостинги тоже не возникает никаких проблем – иногда для этого достаточно выполнить несколько кликов.
- Универсальность. MySQL – кроссплатформенное программное обеспечение. Оно будет успешно функционировать на Unix, Linux, Windows, Solaris и других системах. У него также есть API для большинства популярных языков разработки.
- Высокий уровень производительности. Если использовать средние и небольшие таблицы информации, MySQL справится с ними очень быстро. Это связано с особенностями внутренней структуры системы управления БД.
- Бесплатное распространение и открытый исходный код. Это делает рассматриваемую СУБД широко доступной. Она применяется не только опытными специалистами, но и новичками.
- Безопасность. MySQL способна обеспечить высокий уровень безопасности в процессе хранения данных и информационного обмена. У СУБД продвинутая система контроля прав для тех или иных пользователей, поддерживается шифрование и верификация. А еще для MySQL поддерживаются плагины, увеличивающие на стороне сервера уровень безопасности.
Перед изучением SQL-запросов на базе рассматриваемой СУБД нужно учитывать некоторые ее недостатки. А именно:
- Медленное развитие. Система является бесплатной, поэтому обновления для нее – редкость. Это наиболее распространенный недостаток свободного программного обеспечения.
- Не самый большой функционал. Рассматриваемая СУБД по умолчанию обладает меньшим количество функций и возможностей, чем ее конкуренты. За счет такого подхода удается обеспечивать простоту программы и легкость в ее освоении. Для дополнительных операций придется устанавливать расширения и плагины.
- Падение уровня производительности при работе с крупными проектами. Упомянутая СУБД лучше всего подходит для небольших и средних хранилищ таблиц. В случае с крупными проектами система может вести себя непредсказуемо из-за множества одновременных запросов в информационной базе. Производительность в таком случае сильно падает.
Снижение производительности MySQL в больших проектах не должно отталкивать. Этот недостаток просто необходимо учесть при выборе СУБД. Изначально упомянутое программное обеспечение не было предназначено для масштабных и связанных друг с другом таблиц.
Виды SQL-команд
SQL – это язык запросов, используемый для манипулирования реляционными базами данных. В таких хранилищах сведения будут храниться в качестве связанных друг с другом таблиц. SQL помогает выполнять разнообразные операции с имеющимися электронными материалами: добавлять запись, изменять их, удалять и так далее.
SQL – инструмент, который лежит в основе систем управления реляционными базами данных. Синтаксис SQL напоминает обычные предложения. Он состоит из ключевых слов и аргументов.
У SQL все команды условно делятся на несколько разновидностей:
- DDL или Data Definition Language. Такие команды необходимы для того, чтобы определять материалы. Соответствующие запросы позволяют очень быстро настраивать БД с таблицами – создавать их и прописывать структуры. В качестве примеров можно привести такие запросы как: DROP, CREATE, ALTER, RENAME.
- DML или Data Manipulation Language. Данный тип команд для работы с таблицами позволяет управлять информацией в хранилищах. Такие запросы дают возможность обновления, добавления, удаления и выбора информации. Примеры: SELECT, DELETE, UPDATE, INSERT.
- DCL или Data Control Language. Так называются запросы для выдачи или отзыва прав доступа пользователям. В качестве примеров стоит привести: DENY, GRANT и REVOKE.
- TCL или Transaction Control Language. Этот вариант запросов используется для управления транзакциями. В качестве таковых выступают команды с подтверждением или отказом изменений в таблицах БД. Примерами служат запросы: ROLLBACK, COMMIT, BEGIN.
Теперь можно изучить принцип обращения с SQL-командами более детально. Ниже представлены принципы, по которым получится делать простые запросы к БД через MySQL.
Структура SQL-команды
Команды SQL напоминают обычные предложения, но написанные на английском языке. С их помощью удается указывать действия, необходимые для выполнения различных манипуляций.
Наиболее распространенными являются операторы:
- Select – используется для выбора отдельных столбцов или всей таблицы целиком. Является обязательным во всех запросах в информационных таблицах.
- From – оператор, указывающий на то, из какой таблицы происходит считывание информации. Как и Select, является обязательным.
- Where – условие выборки информации.
- Group By – столбец, по которому будет осуществляться группировка имеющихся материалов.
- Having – условие фильтрации сгруппированных ранее материалов.
- Order By – столбец, по которому данные будут отсортированы.
Чтобы лучше понимать запросы в базе MySQL, далее предстоит рассмотреть предложенные выше операторы более подробно. Первые два элемента в списке являются обязательными. Без них невозможно составить ни одну дальнейшую операцию.
Select
Любая команда начинается с ключевого слова или действия, которое должно осуществиться. В качестве примеров можно выделить вставку новой строки, выборку строк, изменение заданной таблицы частично или целиком.
Одним из ключевых слов служит SELECT. С его помощью осуществляется выборка отдельных столбцов или всей таблицы. Это необходимо для дальнейшей передачи данных другим запросам на обработку.
Вот наглядный пример использования этого оператора:
SELECT (Name, Age) FROM Clients
Здесь на вывод будут поставлены все строки таблицы Clients, которые принадлежат к столбцам Age и Name.
FROM
FROM, как и SELECT, является еще одной обязательной частью. Команда ставится после SELECT и необходима для указания, из какой таблицы или информационного источника брать материалы. Обычно в этом операторе прописывается название таблицы, с которым предстоит работать.
В SQL все базируется на работе с таблицами. Именно поэтому для получения информации из того или иного места прописывается табличное название.
WHERE
WHERE используется для фильтрации данных. С его помощью в запросе можно делать условие, которому должны удовлетворять все строки, выводимые на экран в результате выполнения команды.
Если дополнить ранее предложенный пример оператором WHERE, можно сделать такую команду:
SELECT (Name, Age) FROM Clients WHERE Age >20
Здесь на экран будут выводиться данные, принадлежащие к Name и Age, но только те, у которых Age больше 20.
GROUP BY
Оператор, который помогает группировать информацию по тем или иным столбцам. Результатом становится новая таблица, построенная на основе ранее выбранных материалов.
Вот дополненная версия предыдущего запроса – она подразумевает сортировку по городам:
SELECT (Name, Age) FROM Clients WHERE Age > 20 GROUP BY City
С помощью соответствующей команды осуществляется возврат клиентов старше 20 лет. Затем происходит сортировка по городам. Главное – чтобы в таблице поддерживался столбец City.
HAVING
HAVING в отличие от оператора SELECT не является обязательным. Он позволяет группировать материалы по тем или иным условиям. Обычно используется совместно с GROUP By. По функциональности он напоминает WHERE.
Ниже – наглядный пример использования HAVING:
SELECT (Name, PaymentAmount, Age)
FROM Clients
WHERE Age > 20
GROUP BY City
HAVING PaymentAmount > 1000
Здесь команда с SELECT и HAVING позволяет выводить только клиентов, которые заказали не менее чем на 1000 рублей.
Далее каждая новая операция будет добавляться в качестве новой строки – это удобно и помогает не запутаться. На корректность команды соответствующая интерпретация записи не влияет. Такой подход положительно влияет только на степень читаемости.
ORDER BY
Дает возможность сортировать данные из SELECT FROM по возрастанию или убыванию. Оператор способен работать как с числами, так и с символами. В качестве параметра здесь указывается столбец, по которому необходимо выполнить сортировку.
SELECT (Name, PaymentAmount, Age)
FROM Clients
WHERE Age > 20
GROUP BY City
HAVING PaymentAmount > 1000
ORDER BY Age
В предложенном выше примере сортировка осуществляется по возрастанию. Именно так по умолчанию работает ORDER BY. Чтобы отсортировать информацию по убыванию, требуется использовать ключевое слово DESC.
Также есть и другие дополнительные операторы:
- VIEW;
- LIKE;
- UNION и другие.
Они используются более продвинутыми пользователями и на первых порах изучения команд с SELECT в MySQL не нужны.
Основы создания таблиц
Простые и самые распространенные операторы для работы с SQL вроде SELECT были представлены вниманию выше. И структура команды для выполнения операций с таблицами – тоже. Теперь можно изучить взаимодействие с табличными сведениями более подробно. Предстоит создать таблицу и постепенно заполнять ее информацией.
Создание таблицы и БД
CREATE DATABASE используется до SELECT. Эта операция позволяет создать БД. Выглядит она так:
CREATE DATABASE CatsCatsCats
Именно с такой записью предстоит работать далее. Следующий этап – формирование таблиц. Команда имеет такую форму как:
CREATE TABLE имя_таблицы (
колонка1 тип данных,
колонка2 тип данных,
…
колонкаN тип данных
);
SQL поддерживает множество типов данных:
- int – целое число;
- float – десятичное число;
- datetime – дата;
- varchar – строка.
В заданной таблице будут использоваться строки и целые числа. Выглядит это так:
Здесь добавлены 5 столбцов: идентификатор кота, его имя, возраст, цвет, имя владельца. А еще есть условие NOT NULL, чтобы ни одно из полей не было пустым.
Цифры рядом с типами данных указывают, сколько бит выделяется для поля. Сейчас заданная таблица пустует. Нужно заполнить ее информацией, чтобы использовать SELECT и другие операторы.
ALTER TABLE
ALTER TABLE позволяет добавить столбец в табличное хранилище. Пусть будет добавлен еще и город проживания кота:
В этой записи указывается, в какую таблицу нужно внести изменения. Далее используется ключевое слово ADD с указанием нового столбца и его типа данных.
ALTER TABLE имеет достаточно широкие возможности, но для начала использования SQL-операторов в MySQL они не нужны. С помощью этой записи можно удалять, а также редактировать существующие записи.
INSERT
INSERT позволяет добавлять новые строки. Для этого предстоит указать, какие столбцы требуется заполнить. После – передать значения через VALUES.
Здесь добавлены несколько котов. SELECT не используется, ведь с информацией работать пока не приходится. БД только заполняется материалами. Строки указываются в одинарных кавычках, а числа – без них вовсе. Одной операцией нельзя добавить сразу несколько строк.
Это – всего лишь основы использования разных команд в SQL-запросах. Более глубокие знания помогут получить дистанционные компьютерные курсы.
Прокачать навыки работы с базами данных можно на курсах Otus.