Зачем нужны базы данных? И что это вообще такое? //Part 1
Вначале была береста…
И на ней, вероятно, фиксировали данные о походах Ярослава Мудрого и Владимира Мономаха. Или составляли на бересте долговые списки ( с кого что взять), и даже — протоколы!
По сути, это и были первые БД — базы данных, хоть и сильно упрощенные.
Сильно позже появились тетрадки, альбомы, эксель, акцесс и т.д. Да что говорить, еще в начале 00-х половина малого бизнеса вели учет продаж в тетрадях.
Кстати. Поговорим о данных. Про базу не будем — потому как понятно.
Данные — это (ISO, 2015) поддающееся многократной интерпретации представление информации в формализованном виде, пригодном для передачи, связи или обработки.
Если упрощенно, то данные — это информация, которую мы можем хранить в специальном виде на каком-либо носителе.
Но тут есть некоторая особенность. Исходя из определений можно подумать, что если мы владеем информацией, которая пока только у нас в голове — допустим, утренние новости, или покупка кофе — то это не данные, т.к. они нигде не записаны. Но это не совсем так.
Вся эта инфа хранится у нас в голове, а поскольку хранится — то это уже данные. Память — чрезвычайно сложная и распределенная система, и в отличие от компухтера, у мозга нет одного точного места для хранения воспоминаний. По сути память — это паттерны нейронных связей, распределенных по разным участкам мозга. Вполне подходит под определение от ISO 2015.
Потом появился Excel…
Неандертальцы начали массово мигрировать в Excel, когда противиться натиску технологий было уже невозможно. К слову сказать, некоторые небольшие компании до сих пор вполне успешно хранят свои данные в экселевских таблицах (а ситхи хранят там тест-кейсы!).
В принципе, данные хранить в экселе можно. Там можно вести учет клиентов, их имена, фамилии, адреса и т.д. Ведь хранение данных само по себе не требует БАЗЫ ДАННЫХ. Но это все неплохо, пока:
— У вашей таблички 100, 200, 1000 записей, и табличек несколько
— С вашими табличками работает 1 человек
— Вы совершенно не заботитесь о безопасности
— Скорость работы с данными Вам не важна
— Точность данных для Вас тоже не представляет интереса
Во всех остальных случаях понадобятся БД.
Базы данных — это организованная специальным образом структура, которая умеет хранить, обрабатывать и изменять информацию в больших объемах.
Общаются с БД с помощью специального языка — SQL — языка структурированных запросов. Вот так вот просто. Мы посылаем запрос — получаем ответ. Прям как в Яндексе или в Гугле.
Типов баз данных много, тут мы будем говорить только о реляционных. Все, что нужно знать для начала о реляционных БД — это то, что они хранят информацию в таблицах, и основная работа крутится вокруг отношений этих таблиц друг к другу.
Кстати. В основном общаются с БД через СУБД. СУБД — это системы управления базами данных, которые позволяют легко с ними взаимодействовать. Выглядит это так:
Представим, что нам нужно создать таблицу в базе данных, которая бы хранила информацию о пользователях. Сколько нам нужно столбцов? Ну как минимум:
— Id пользователя
— ФИО
— Логин
— Пароль
Для этого есть у языка SQL есть замечательные команды:
INSERT — вставка данных
SELECT — выбор данных
UPDATE — обновление данных
DELETE — удаление данных
Как использовать запросы, какие указывать типы данных, как хэшировать пароли — мы поговорим после перемены. Но в итоге у нас получается примерно так:
Вот, в принципе, наша первая табличка готова. Согласитесь, пока ничего сложного.
Теперь все терпеливо ждем, пока я допишу часть 2.