Тема 6 из 9 Важная тема
Базы данных
Реляционные базы данных и PostgreSQL: проектирование, нормальные формы и SQL-запросы.
- 01 Введение в базу данных Каждый раз когда мы с Вами открываем какой-либо сайт или мобильное приложение, мы получаем и / или генерируем огромное количество информации. Зачастую эта информация хранится в… ≈8 мин
- 02 Установка и настройка PostgreSQL PostgreSQL - это объектно-реляционная система баз данных, которая обладает признаками традиционной коммерческой базы данных, с расширениями, которые будут доступны следующему… ≈4 мин
- 03 Архитектура СУБД Зачем нужны базы данных? Дело в том, что данные, с которыми работают программы, не существуют сами по себе где-то в космосе. Их нужно как-то хранить, уметь добавлять, извлекать… ≈2 мин
- 04 Подготовка к работе Вспомним, как работает psql . При запуске этой программы без аргументов, она пытается подключиться к локальной базе данных (находящейся на той же машине) с именем, совпадающим с… ≈4 мин
- 05 Структура реляционной базы данных PostgreSQL — СУБД, созданная для работы с реляционными базами данных. Понятие "реляционная" мы рассмотрим позже, а сейчас сосредоточимся на её прикладных аспектах. В этом уроке… ≈4 мин
- 06 Создание таблиц В данном блоке мы с Вами создадим таблицу и попробуем поработать с ней, добавляя, модифицируя и удаляя данные. ≈5 мин
- 07 Вставка и модификация данных Со структурой закончили, теперь добавим данные. За манипуляцию данными в SQL отвечает подмножество DML (Data Manipulation Language) , включающее в себя INSERT, UPDATE и DELETE… ≈5 мин
- 08 Выборка данных Операция SQL, с которой чаще всего соприкасаются программисты, — SELECT. В типичных веб-приложениях данные выбираются в 10 раз чаще, чем модифицируются. SELECT невероятно мощная… ≈29 мин
- 09 Реляционная модель данных Основой логики работы в реляционных СУБД является реляционная алгебра, именно поэтому в подобных системах добавляют приставку "реляционная". Если посмотреть книги, посвященные… ≈7 мин
- 10 Первая нормальная форма Возьмем для примера обычный интернет-магазин, в котором продается электроника. Каждый раз когда пользователь делает заказ, в базу данных заносится запись об этом (в таблицу order… ≈6 мин
- 11 Вторая нормальная форма После предыдущих манипуляций мы получили такую таблицу: ≈3 мин
- 12 Третья нормальная форма Третья нормальная форма, так же как и вторая, включает в себя два пункта: ≈2 мин
- 13 Автоинкремент Ранее мы создавали значения первичных ключей самостоятельно. Так можно делать в учебных целях, но в промышленной разработке эту задачу берут на себя базы данных. Общий принцип… ≈2 мин
- 14 Онтология Ключ к овладению принципами организации данных в реляционных базах лежит не в заучивании форм нормализации и изучении реляционной алгебры, а в понимании смыслов, которые лежат вне… ≈6 мин
- 15 Ограничения Первичные и внешние ключи в базах данных относятся к понятию Constraints ("ограничения"). Оно включает в себя различные модификаторы колонок в базе данных, добавляющие ограничения… ≈2 мин
- 16 Изменение структуры таблицы (ALTER) Наиболее сложный запрос при работе с таблицами — обновление структуры таблицы. Если посмотреть официальную документацию, то общая запись этого запроса занимает больше трёх экранов… ≈3 мин
- 17 Сортировка (ORDER) Выборка данных из базы не имеет определённого порядка, точнее порядок есть, но он никак логически не обоснован. База данных, по умолчанию, возвращает данные в том порядке, в… ≈3 мин
- 18 Условия (WHERE) Самое простое условие — указание прямого соответствия. Например, выборка по идентификатору: ≈4 мин
- 19 Лимит (LIMIT) Типичные таблицы в веб-проектах содержат огромное число данных, поэтому их никогда не показывают на страницах сразу все. Обычно выводится лишь небольшая часть — скажем, 10 строк… ≈1 мин
- 20 DISTINCT Предположим, что нам нужно узнать все имена, которые есть у наших пользователей. Самый простой способ сделать это — выполнить запрос не всех полей, а только имени: ≈3 мин
- 21 Функции в SQL При реализации пейджинга обычно показывают общее число страниц. Для этого надо посчитать число строк в конкретной таблице. Как это сделать? Обычная выборка уже никак не поможет… ≈2 мин
- 22 Группировка (GROUP) Типичные задачи, связанные с агрегатными функциями, выглядят так: Вывести общее число топиков для каждого пользователя. Используя только функции, невозможно выполнить данную… ≈5 мин
- 23 Соединения (JOINS) Как мы уже знаем, реляционная модель подразумевает связь между данными разных отношений посредством внешних ключей. С практической точки зрения это значит, что, зная первичный… ≈5 мин
- 24 Транзакционность Далеко не все операции с базой данных можно выразить одним запросом. Классический пример — перевод денег с одного счёта на другой. Допустим, у нас есть таблица счетов accounts, в… ≈4 мин
- 25 Производительность Вопрос производительности базы данных и запросов к ней с течением времени становится всё актуальнее. Чем больше проект и сложнее связи, чем больше данных в таблицах, тем выше… ≈4 мин