Похожие презентации:
Введение в системы управления базами данных (СУБД) и основные возможности реляционной СУБД MySQL
1. Введение в системы управления базами данных (СУБД) и основные возможности реляционной СУБД MySQL
2. Зачем нужна система управления базами данных (СУБД)?
• Быстрый доступ к данным (поиск и сохранение)• Безопасный одновременный доступ множества
пользователей
• Надежность, безопасность, простота использования
БД 1
БД 2
PHP-приложение
СУБД
БД 3
….
3. MySQL – самая популярная реляционная СУБД
• Реляционные СУБД используют реляционнуюмодель данных. Проще говоря – данные хранятся в
таблицах.
• SQL (structured query language, язык
структурированных запросов) – специальный язык
для взаимодействия с реляционной СУБД.
• Существуют также нереляционные СУБД (“nosqlбазы”) – хранилища «ключ-значение», документоориентрованные, колоночные, графовые и другие.
См., например, Redis, Memcached, MongoDB и т. д.
4. Требования к таблицам в реляционных СУБД
• В таблице не должно быть двух одинаковых строк.• Каждый столбец имеет строго определенный тип
данных.
• В каждой ячейке таблицы может находиться только
одно значение – так называемое «атомарное» значение
(а не группа значений).
• Для идентификации строк и для связи таблиц между
собой используется «первичный ключ» – столбец с
гарантированно уникальными (в рамках таблицы)
значениями.
5. Первая нормальная форма
6. Подключаемся к MySQL через консоль
mysql -uuser -ppassword7. Первые команды SQL: создаем БД и таблицу
CREATE DATABASECHARACTER SET utf8
COLLATE utf8_general_ci;
USE clinic;
CREATE TABLE `animals` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(255) NOT NULL,
`species` VARCHAR(50),
`weight` INT(11),
`gender` ENUM('м', 'ж'),
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SHOW TABLES;
DESCRIBE animals;
8. Вставка и выборка данных
INSERT INTO animals (name, species, weight, gender)VALUES
('Мурзик', 'Кот', 4320, 'м'),
('Чуча', 'Крыса', 130, 'ж'),
('Шарик', 'Собака', 9850, 'м'),
('Кеша', 'Попугай', 240, 'м');
SELECT * FROM animals;
SELECT * FROM animals ORDER BY weight DESC;
SELECT * FROM animals WHERE weight > 1000 AND weight < 5000;
SELECT * FROM animals WHERE name = 'мурзик'
OR NAME LIKE 'шар%' OR NAME LIKE '%ча' OR NAME LIKE '%р%';
9. Изменение и удаление данных
UPDATE animals SET name = 'Мурзик', weight = 3480;UPDATE animals SET name = 'Бобик', weight = 2000
WHERE id = 3;
UPDATE animals SET name = 'Пушинка'
WHERE weight < 100;
DELETE FROM animals WHERE weight > 10.000;
DELETE FROM animals WHERE id = 3;
10. HeidiSQL
11. Бэкап и восстановление
Выгрузка БД в текстовый файл:mysqldump -uuser -ppassword clinic > clinic.sql
Загрузка БД из текстового файла:
mysql -uuser -ppassword clinic < clinic.sql
12. Группировка
13. Агрегирующие функции
• Функции: COUNT, MAX, MIN, SUM, AVG• Могут использоваться как вместе с
GROUP BY, так и отдельно
SELECT species, SUM(weight) AS total
FROM animals
GROUP BY species
ORDER BY total;
SELECT MAX(weight) FROM animals;