Работа с базой данных

Содержание

Слайд 2

Вход для работы с базой данных Заходим в командную строку Переходим

Вход для работы с базой данных

Заходим в командную строку
Переходим в папку

содержащую файл mysql.exe
Запускаем базу даных под конкретным пользователем:
mysql -u root -p;
Слайд 3

Введение В основе работы непосредственно с базой данных лежат 4 основные

Введение

В основе работы непосредственно с базой данных лежат 4 основные операции:
Создание

базы данных (CREATE)
Редактирование базы данных (ALTER)
Выбор базы данных (USE)
Удаление базы данных (DROP)
Слайд 4

Создание базы данных CREATE DATABASE [IF NOT EXISTS] db_name [CHARACTER SET charset] [COLLATE collation];

Создание базы данных

CREATE DATABASE [IF NOT EXISTS] db_name
[CHARACTER SET charset]


[COLLATE collation];
Слайд 5

Кодировки и сортировки CHARACTER SET – кодировка. Разные кодировки включают в

Кодировки и сортировки

CHARACTER SET – кодировка. Разные кодировки включают в себя

различные наборы символов. MySQL необходимо знать какая кодировка будет использована в базе данных, чтобы корректно проводить сортировку и индексацию данных.
COLLATION – способ, с помощью которого следует упорядочивать и сравнивать данные в БД
Слайд 6

Редактирование базы данных ALTER DATABASE [db_name] db_attr [, db_attr];

Редактирование базы данных

ALTER DATABASE [db_name]
db_attr
[, db_attr];

Слайд 7

Выбор базы данных USE db_name; Операция необходима только при работе с

Выбор базы данных

USE db_name;
Операция необходима только при работе с БД из

консоли, при использовании графического интерфейса или скрипта данная команда применяется автоматически
Слайд 8

Удаление базы данных DROP DATABASE [IF EXISTS] db_name; Команда физически удаляет

Удаление базы данных

DROP DATABASE [IF EXISTS] db_name;
Команда физически удаляет выбранную базу

данных со всеми вложенными в нее таблицами
Слайд 9

Просмотр существующих БД SHOW DATABASES; Показывает пользователю все доступные для работы базы данных

Просмотр существующих БД

SHOW DATABASES;
Показывает пользователю все доступные для работы базы данных

Слайд 10

Просмотр основных характеристик Базы данных SHOW CREATE DATABASE `db_name`; Показывает запрос,

Просмотр основных характеристик Базы данных

SHOW CREATE DATABASE `db_name`;
Показывает запрос, которым была

создана база данных, если какие-либо параметры подставлялись автоматически, то помечает это в комментарие
Слайд 11

Создание таблицы CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,...)] [table_options];

Создание таблицы

CREATE [TEMPORARY] TABLE
[IF NOT EXISTS] tbl_name
[(create_definition,...)]
[table_options];

Слайд 12

Описываемые атрибуты col_name type [NOT NULL | NULL] [DEFAULT default_value] [AUTO_INCREMENT] [PRIMARY KEY] [reference_definition]

Описываемые атрибуты

col_name
type
[NOT NULL | NULL]
[DEFAULT default_value]
[AUTO_INCREMENT]
[PRIMARY KEY]
[reference_definition]

Слайд 13

Типы данных В SQL выделяют 4 основные группы типов данных, каждая

Типы данных

В SQL выделяют 4 основные группы типов данных, каждая из

которых включает в себя набор типов данных:
NUMERIC
DATE and TIME
STRING
SPATIAL
Слайд 14

NUMERIC

NUMERIC

Слайд 15

DATE and TIME

DATE and TIME

Слайд 16

STRING

STRING

Слайд 17

Параметры таблицы [AUTO_INCREMENT] [CHECKSUM] [COMMENT] [ENGINE] [DEFAULT CHARSET] [COLLATE]

Параметры таблицы

[AUTO_INCREMENT]
[CHECKSUM]
[COMMENT]
[ENGINE]
[DEFAULT CHARSET]
[COLLATE]

Слайд 18

Редактирование таблиц ADD [COLUMN] (create_def, create_def,...) ; ADD PRIMARY KEY (index_col_name,...)

Редактирование таблиц

ADD [COLUMN] (create_def, create_def,...) ;
ADD PRIMARY KEY (index_col_name,...) ;
ADD [UNIQUE

| FULLTEXT | FOREIGN KEY | INDEX] [index_name] (index_col_name,...) ;
CHANGE [COLUMN] old_col_name create_def [FIRST | AFTER col_name] ;
DROP [COLUMN] col_name;
DROP PRIMARY KEY;
DROP INDEX index_name;
RENAME [TO] new_tbl_name;
table_options;
Слайд 19

Добавление данных в таблицу INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tbl_name

Добавление данных в таблицу

INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES (expression,...),(...),

…;
INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name
SET col_name=expression,
сol_name=expression, ...;
Слайд 20

Замена строк REPLACE [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tbl_name [(col_name,...)] VALUES

Замена строк

REPLACE [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES (expression,...),(...), …;
REPLACE[LOW_PRIORITY |

DELAYED] [IGNORE]
[INTO] tbl_name
SET col_name=expression,
сol_name=expression, ...;
Слайд 21

Обновление данных в таблице UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [,

Обновление данных в таблице

UPDATE [LOW_PRIORITY] [IGNORE] tbl_name
SET col_name1=expr1 [, col_name2=expr2, ...]
[WHERE

where_definition]
[LIMIT #]
Слайд 22

Очистка таблицы и удаление записей TRUNCATE TABLE table_name; DELETE [LOW_PRIORITY |

Очистка таблицы и удаление записей

TRUNCATE TABLE table_name;
DELETE [LOW_PRIORITY | QUICK] FROM

table_name
[WHERE where_definition]
[ORDER BY ...]
[LIMIT rows];
Слайд 23

Ключи и индексы Потенциальный ключ – подмножество атрибутов отношения, удовлетворяющее требованиям

Ключи и индексы

Потенциальный ключ – подмножество атрибутов отношения, удовлетворяющее требованиям уникальности

и минимальности
Индекс – объект базы данных, создаваемый с целью повышения производительности поиска данных. Все индексы в MySQL хранятся в виде B-деревьев
Слайд 24

Ключи По типу Первичный Внешний По природе Естественный Суррогатный По сложности Простой составной

Ключи

По типу
Первичный
Внешний
По природе
Естественный
Суррогатный
По сложности
Простой
составной

Слайд 25

Внешние ключи Типы связей Запрет (RESTRICT) Каскадное удаление/обновление (CASCADE) Обнуление (SET NULL)

Внешние ключи

Типы связей
Запрет (RESTRICT)
Каскадное удаление/обновление (CASCADE)
Обнуление (SET NULL)

Слайд 26

Пример создания CREATE TABLE parent (id INT NOT NULL, PRIMARY KEY

Пример создания

CREATE TABLE parent
(id INT NOT NULL, PRIMARY KEY (id))
ENGINE=INNODB;

CREATE TABLE child
(id INT, parent_id INT, INDEX par_ind (parent_id),
FOREIGN KEY (parent_id)
REFERENCES parent(id) ON DELETE SET NULL )
ENGINE=INNODB;
Слайд 27

Типы индексов PRIMARY – первичный ключ, служит для однозначного определения записи

Типы индексов

PRIMARY – первичный ключ, служит для однозначного определения записи
UNIQUE –

ограничение уникальности на поле
INDEX – простое индексное поле
FULLTEXT – полнотекстовый поиск (применяется только к столбцам TEXT и VARCHAR)
Слайд 28

Суть индексов

Суть индексов

Слайд 29

Файловое представление базы данных С точки зрения хранения данных на диске,

Файловое представление базы данных

С точки зрения хранения данных на диске, база

данных – это множество файлов
Каждая таблица может описываться 3-мя основными файлами
.frm - файл определения
.MYD - файл данных
.MYI - файл индексов
Слайд 30

Файл и блоки

Файл и блоки

Слайд 31

Поиск записей в таблице

Поиск записей в таблице

Слайд 32

Поиск после сортировки

Поиск после сортировки

Слайд 33

Составной индекс

Составной индекс

Слайд 34

Селективность

Селективность