SQL - структурированный
язык запросов для общения с сервером
БД.
Самый распространенный
сервер - это MySQL.
Работать с БД удобно
через phpMyAdmin.
Самые распространенные
типы таблиц - InnoDB и MyISAM. Denwer по умолчанию
использует MyISAM.
Во вкладке Учетные
записи пользователей можно создать
нового пользователя.
Вкладки экспорт и импорт
позволяют делать бэкап БД.
Web-сервер не связан с
сервером MySQL. Взаимодействовать мы
можем, например, через PHP.
Работа с сервером из
консоли.
Можно вызов сервера
прописать, как службу Windows, чтобы постоянно
не указывать доступ к exe файлу.
Идем в панель управления
- Система и безопасность - Администрирование
— Службы.
Как прописать запуск
сервера MySQL в качестве службы Windows?
Для этого нам
нужно знать адрес нашего сервера.
Например, C:\OSPanel\modules\database\MySQL-5.7-x64\bin
Инсталируем
службу
Для Денвера.
"C:\WebServers\usr\local\mysql-5.5\bin\mysqld"
--install "mysqld"
--defaults-file="C:\WebServers\usr\local\mysql-5.5\my.ini"
Здесь "mysqld"
— имя службы, которое мы придумываем
сами.
"C:\OSPanel\modules\database\MySQL-5.7-x64\my.ini"
— это файл настроек. Это файл my.cnf.
Расширение этого файла
зависит от системы.
Теперь мы можем
обновить службы и увидеть наш файл.
Выберем нашу службу. Правой кнопкой
мыши отобразим свойства, выберем тип
запуска Вручную.
Для запуска
службы в консоле набираем: net start mysqld
Для остановки
службы: net stop mysqld
Удаление
службы через консоль: sc delete имя_службы.
Например: sc delete mysqld
При запуске
службы возникает ошибка 1067.
Для того,
чтобы ее избежать нужно открыть файл
my.ini и
закомментировать строки:
#tmpdir
= /tmp
#socket
= /tmp/mysql.sock
Для
входа в Mysql-монитор напишем команду:
C:\WebServers\usr\local\mysql-5.5\bin\mysql -u root
Выйдем
из монитора: exit
Пропишем
путь для быстрого исполнения команд:
Свойства компьютера - Дополнительные
параметры системы - Переменные
среды — Системные переменные — Path
– Изменить.
Добавляем наш новый путь к
файлу mysql: C:\WebServers\usr\local\mysql-5.5\bin\
Обязательно перезапускаем консоль!
Теперь
войти в монитор Mysql-монитор можно
быстрее. Напишем команду: mysql
-u root
Выход:
exit
Для
справки ввести: \h
Набор
признаков реляционной БД
1.Данные
хранятся в двумерных таблицах, состоящих
из столбцов (поля) и строк (ряды).
2.На пересечении
ряда и поля содержится только 1 значение.
3.Поля имеют
имя, и значения в поле должны быть одного
типа.
4.Поля в
таблицах расположены в порядке,
определенном при создании и должно быть
как минимум 1 поле.
5.Сервер
возвращает результат запроса в виде
таблиц.
В БД должна
быть целостность.
Первичный
ключ - это ограничитель.
Первичный
ключ - параметр, который уникальным
образом идентифицирует запись.
У него 2
свойства: уникальность (неповторяемость)
и вечность (при удалении записи пропадает
и первичный ключ).
Обычно это
целые числа.
Сервер не
позволит добавить записи с одним и тем
же ключом.
Создадим
в phpMyAdmin новую БД.
Адрес
phpMyAdmin: http://localhost/Tools/phpMyAdmin/
Базы данных
- Создать базу данных.
Вводим имя:
sql
Сравнения.
Чем отличаются
bin от ci?
Эти окончания
- способ сравнения строк.
utf8_bin -
бинарный, регистр берется в расчет. user
!== User Выбирают для поля, где храниться
логин и пароль.
utf8_genral_ci -
регисторонезависимый. user == User
Создадим
таблицу в БД.
Таблица
продавцов salers с 4 полями.
snum - идентификатор продавца.
sname - имя продавца
city - город, в котором расположен продавец
comm - комисионные продавца.
snum: int primary
ai
sname: varchar(50)
city: varchar(50)
comm: decimal(3,2)
Тип таблиц:
MyISAM
DECIMAL, например,
0.2
Для INT
указывать длину не обязательно. Здесь
всегда храниться 11 символов.
Напрмер,
длина decimal.
decimal(5.2), где
5 - кол-во знаков, которое будет храниться
в поле, 2 - кол-во знаков после запятой.
Например число 999.99
decimal(точность.масштаб)
Масштаб не
может быть больше точности.
По умолчанию
- что будет храниться в поле.
Сравнение
- можно сделать разное для каждой записи.
Null - отсутствие
значения. Это значит, что поле незаполнено.
Index - ключи.
AI - сервер
будет увеличивать значение поля на
единицу.
MIME-тип - для
разных типов хранимых данных. Допустим,
фотографий.
Создаем
таблицу заказчиков customers с 5 полями.
cnum
cname
city
rating
snum - внешний ключ для связывания таблицы
клиентов с таблицей продавцов
cnum int primary
cname varchar(50)
city varchar(50)
rating int
snum int
Создадим
таблицу заказов из консоли.
net start mysqld
mysql -u root
Посмотрим
на БД:
SHOW DATABASES;
Выберем
БД: use sql
Посмотрим
созданные таблицы: show
tables;
Создадим
таблицу:
CREATE
TABLE orders (
onum
INT(11) NOT NULL,
amt
DECIMAL(6,2) NOT NULL,
odate
DATE NOT NULL,
cnum
INT(11) NOT NULL,
snum
INT(11) NOT NULL,
PRIMARY
KEY(onum)
)
ENGINE=MyISAM;
Выходим
из службы:
exit
net
stop mysqld
Комментариев нет:
Отправить комментарий