Всем привет. Этот цикл уроков задумывается с одной целью – предоставить простой способ изучить SQL – самый популярный язык баз данных.
Есть много хороших книг по SQL, но чаще всего в них слишком много информации для большинства пользователей (разработка БД, теория реляционных БД, администрирование). Хотя это очень важные темы, они не интересны людям, которые просто хотят изучить SQL.
Я сам изучаю SQL, и уроки, которые я пишу, помогут мне лучше освоить материал. Но если кто-то по моим урокам также освоит SQL, или научится чему-то новому – я буду рад.
И так, вперед.
Урок 1. БД, СУБД и SQL
Для начала познакомимся с некоторыми понятиями баз данных.
База данных (далее БД) – это контейнер для хранения данных (обычно это файл или группа файлов).
Но пользователи никогда не работают напрямую с БД, для доступа к ней всегда используется «система управления базой данных» (далее СУБД).
СУБД – это программное обеспечение для работы с базой данных.
Самыми распространенными БД являются реляционные БД.
В реляционных БД данные хранятся в виде таблиц.
В таблице, например, может храниться список клиентов, каталог продукции, или любые другие данные.
Каждая таблица имеет имя. Имя должно быть уникальным.
Все таблицы состоят из одного или нескольких столбцов.
Каждый столбец имеет тип, который определяет, какие данные (текст, число, дата,…) могут храниться в данном столбце.
Набор информации, описывающий таблицу, называется «схемой таблицы».
Набор информации, описывающий все таблицы БД и связи между ними, называется «схемой БД».
Данные в БД хранятся в таблицах, таблица состоит из столбцов, а где же хранятся сами данные? Данные в таблице хранятся в строках.
Вот у нас есть таблица, которая содержит список туров определенной туристической компании.
Как нам выбрать из таблицы конкретный тур, чтобы изменить или удалить его?
Очень просто. Для этого в каждой таблице должен быть столбец, который содержит уникальное значение (Таблица 2, столбец «Код тура»). По нему мы и сможем распознать нужную нам строку. Да, это может быть не только один столбец, но и комбинация нескольких столбцов.
Такой столбец (или набор столбцов) называется «первичный ключ». Первичный ключ не обязателен в таблице, но старайтесь задавать их для каждой таблицы (чтобы при надобности иметь возможность изменять и удалять данные из таблицы).
Любой столбец таблицы может быть использован в качестве первичного ключа, если выполняются следующие условия:
· Две разные строки не могут иметь одно и то же значение первичного ключа.
· Столбцы первичного ключа не могут иметь значения NULL.
· Значения в столбце первичного ключа не могут быть изменены.
· Значения первичного ключа нельзя использовать дважды. Если строка удалена из таблицы, ее первичный ключ нельзя в дальнейшем назначать другим строкам.