Что такое база данных и SQL. Как работают с базами и что в них хранят

Если сказать упрощённо, то база данных - это среда, в которой существуют таблицы с данными. Если вы когда-нибудь работали в офисной программе "Excel", в которой можно делать таблицы, то считайте что работали с базой данных.

В базах данных сайтов могут содержаться таблицы, в которых может быть записано всё что угодно:
  • данные новостей, которые опубликованы на сайте
  • данные пользователей, которые зарегистрированы на сайте
Продемонстрируем типичную таблицу из базы данных. Пускай эта таблица будет называться "Пользователи":
+--------------------+
|    Пользователи    |
+--------------------+
| Имя  | Любимая еда |
+------+-------------+
| Мышь | Сыр         |
+------+-------------+
| Кот  | Молоко      |
+------+-------------+
Как можно заметить, это обычная таблица. Но в таком виде на сайте её увидеть нельзя. Сайт делает запрос к ней с помощью специального языка, который называется SQL (Structured Query Language — «язык структурированных запросов»). Эти запросы возвращают массив строк, которые подходят под параметр запроса. Разберём далее логику запросов.

Представьте, что необходимо получить из примера выше все данные таблицы и вывести их на экран. Тогда нужно сделать запрос к базе данных на языке SQL:
SELECT 'Имя пользователя', 'Любимая еда' FROM 'Пользователи';
Как можно догадаться из этой строчки, к базе данных будет сделан запрос на получение данных. Об этом говорит слово SELECT, который переводится как "ВЫБРАТЬ". После слова SELECT стоят названия двух столбцов, значение которых необходимо получить из базы данных. Если название столбца не указать, то его значение не будет получено. Можно написать нужные столбцы через запятую, как это сделано в примере, а если нужно вывести все, то можно просто поставить значок звёздочки *.

Последняя часть запроса содержит слово FROM, которое дословно переводится как "из". После этого слова стоит таблица ИЗ которой надо получить данные. Если не указать из какой таблицы нужны данные, то база данных выдаст ошибку.
Пример SQL запроса, который приведён выше, сильно утрирован для большей наглядности и простоты. Потому что в базах данных крайне нежелательно создавать таблицы с кириллическими названиями таблиц и столбцов. А ещё названия столбцов и самой таблицы нужно заключать не в одинарную кавычку ' , а в наколнную `
Перейдём к обработке результатов выполнения запроса. Если утрировать, то после выполнения запроса из примера выше база данных вернёт такой массив:
Array
(
   [0] => Array
   (
      [Имя] => Мышь
      [Любимая еда] => Сыр
   )
   [1] => Array
   (
      [Имя] => Кот
      [Любимая еда] => Молоко
   )
)
После получения этого массива необходимо сделать цикл аналогичный foreach( ) по всем элементам полученного массива. Внутри цикла можно обернуть полученные значения в различные HTML теги, чтобы вывод был красивым, чтобы у страницы сайта был дизайн. Так и происходит взаимодействие сайтов с базами данных.
Базы данных - это не лучшее хранилище информации. Конёк баз данных - это быстрый поиск информации и вывод с сортировкой. Поэтому базы данных целесообразно использовать далеко не везде. Если же нужно обрабатывать терабайты статичной информации без необходимости поиска и сортировки, то выгоднее использовать использовать простые файлы для хранения информации.

Базы данных используются для сайтов в основном потому, что с их помощью можно организовать уровни доступа к информации. И базы данных большинства сайтов в интернете очень редко когда превышают 10 Гигабайт (считая размеры всех таблиц в базе).
В следующих статьях мы разберём более сложные примеры обращения с базой данных: научимся создавать и удалять таблицы, объединять результаты выборки из нескольких разных таблиц и обновлять данные в таблицах. Если вам не терпится приступить к программированию, то рекомендуем ознакомиться со статьёй "Как сделать запрос из PHP к базе данных".
MouseDC.ru - хостинг, виртуальный хостинг, покупка доменов, проверка доменов, WHOIS, покупка SSL сертификатов, доработка сайтов, сопровождение сайтов, разработка сайтов, техподдержка сайтов
Была ли эта статья полезна? Есть вопрос?
Cмотрите другие статьи: