MYSQL 5 инструменты и структура

{title}

{title}


MYSQL 5, внес значительные изменения, чтобы стать самой популярной базой данных и конкурировать с высокопроизводительными бизнес-базами данных.
Мы будем рассматривать некоторые концепции как представления (VIEW), такие как хранимые запросы, по которым мы можем затем выполнять запросы, как если бы они были журнальными таблицами, а также TRIGGER, которые похожи на процедуры, связанные с событием в таблицах, хранимых функциях и хранимых процедурах.
мнения
Они определены для облегчения и ограничения доступа к данным таблицы для ограниченных пользователей.
Структура является статической и создается во время создания: будущие поля / изменения в таблицах не отображаются в представлении.
Поэтому, если представление имеет таблицу SELECT * FROM и после ее определения мы добавим поле в исходную таблицу, мы не увидим его в представлении.
Если мы позже изменим определение какого-либо поля в исходной таблице, то при использовании будет сгенерировано сообщение об ошибке / предупреждение, поскольку ему обязательно придется усекать значения: удаленные поля будут переданы в NULL .
Пример представления для просмотра продаж продавцом:
 СОЗДАТЬ ПРОСМОТР Продавец-продавец КАК ВЫБРАТЬ продавца Сумма (количество * цена) всего ОТ заказов ГРУППА продавцом по ***** ПО ДЕСК 

спусковой крючок
Это хранимые процедуры, связанные с конкретной таблицей, которые выполняются во время до или после явной транзакции и выполняют свой код для каждой записи, на которую влияет транзакция. Они не могут быть вызваны явно, потому что их выполнение связано с таблицей / транзакцией / временем.
Они также известны как триггеры, триггеры или специальные хранимые процедуры.
Например, перед вставкой подтвержденной продажи, если товар есть в наличии, событие вставки автоматически запускает запуск верстки.
 СОЗДАЙТЕ TRIGGER verstock ПЕРЕД ВСТАВКОЙ В ПРОДАЖУ ДЛЯ КАЖДОГО РЯДА НАЧИНАЙТЕ ОБЪЯВИТЬ idproduct INT; ЕСЛИ (идентификатор продукта), ТО ВЫБЕРИТЕ запас ИЗ продуктов, где id = идентификатор продукта; END IF; END 
;
Хранимые процедуры
Хранимые процедуры и функции являются новыми функциями версии MySQL 5.0.
Хранимая процедура - это набор команд SQL, которые можно сохранить на сервере. Как только это будет сделано, клиентам не нужно перезапускать отдельные команды, вместо этого они могут ссылаться на хранимую процедуру.
 CREATE PROCEDURE Record_Sale (В продаже типа INTEGER) НАЧАТЬ ОБЪЯВИТЬ тип CHAR (10); ЕСЛИ тип продажи = 1, то ЗАДАН тип = Ритейл '; ELSE SET type = 'Оптовик'; END IF; INSERT INTO продажи (тип) ЗНАЧЕНИЯ (тип); END 

Затем он вызывается следующим образом
 CALL Sales_Record (1) 

Еще один пример хранимой процедуры
 ПРОЦЕДУРА СОЗДАНИЯ Процедура Вставить (в Имя Varchar (50), в Телефон Varchar (50)) НАЧАТЬ вставить в значения контактов (имя, телефон) (Имя, Телефон); END 

функции
Хранимые функции mysql похожи на хранимые процедуры: они представляют собой набор команд, которые могут храниться на сервере.
Функции предназначены для возврата параметров, функции можно вызывать в инструкциях sql, таких как select, insert и т. Д. Функции не могут возвращать SQL-запросы, они служат только для выполнения задач, для которых нам необходимо выполнить некоторую обработку данных, вычисления или преобразования.
Например:
 CREATE FUNCTION скидка (цена, процент FLOAT) ВОЗВРАЩАЕТСЯ FLOAT ДЕТЕРМИНИСТИЧЕСКИЙ НАЧАТЬ ОБЪЯВЛЯТЬ сумму скидки FLOAT; Установить сумму скидки = цена * процент / 100; ВОЗВРАТИТЕ размер скидки; КОНЕЦ $$ 

  • 0