Лабораторная работа №1 Ознакомление с интерфейсом субд mysql



Pdf көрінісі
бет36/51
Дата11.10.2023
өлшемі1.29 Mb.
#480346
1   ...   32   33   34   35   36   37   38   39   ...   51
Metod BDiAKS 11.03.04 2017

| 1 | 
+---------+ 
1 row in set (0.00 sec)
50


Представление может быть создано на основе различных параметров предложения 
SELECT, при этом можно ссылаться на другие таблицы и представления. Конструкция мо-
жет использовать оператор 
UNION 
и другие подзапросы
.
Синтаксис команды ALTER VIEW 
Для внесения изменений в представление используется команда ALTER VIEW
ALTER
[ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}]
[DEFINER = { user | CURRENT_USER }]
[SQL SECURITY { DEFINER | INVOKER }]
VIEW view_name [(column_list)]
AS select_statement
[WITH [CASCADED | LOCAL] CHECK OPTION]
Синтаксис команды DROP VIEW 
Для удаления представления используется команда DROP VIEW 
VIEW [IF EXISTS]
view_name [, view_name] ...
[RESTRICT | CASCADE]
ПРИМЕР
mysql> CREATE TABLE t (qty INT, price INT);
mysql> INSERT INTO t VALUES(3, 50);
mysql> CREATE VIEW v AS SELECT qty, price, qty*price AS value FROM t;
mysql> SELECT * FROM v;
+------+-------+-------+
| qty | price | value |
+------+-------+-------+
| 3 | 50 | 150 |
Хранимые процедуры и функции
В СУБД MySQL появилась возможность создания и хранения функций и процедур. 
Объявление и работа с процедурами и функциями отличаются в следующем: 

в заголовке функции помимо описания формальных параметров обязательно 
указывается тип возвращаемого ею результата; 

для возврата функцией значения в точку вызова среди ее операторов должен 
быть хотя бы один, в котором имени функции или переменной Result при-
сваивается значение результата; 

вызов процедуры выполняется отдельным оператором

вызов функции может выполняться там, где допускается ставить выраже-
ние, в частности, в правой части оператора присваивания. 
Пользовательские функции по функциональности похожи на хранимые процедуры. 
Разница заключается в том, что возможностей у них меньше (в частности, они должны воз-
вращать только одно значение, например, скалярное или табличное), но их удобнее исполь-
зовать с точки зрения синтаксиса. 
51


Как процедуры, так и функции могут возвращать значения (в виде набора записей). Раз-
личие состоит в том, что функция вызывается из запроса, а процедура из отдельной ко-
манды.
На настоящий момент реализация хранимых процедур не поддерживает никаких внеш-
них языков, но (по крайней мере, так заявляется) соответствует стандарту SQL:2003, позво-
ляющему применять условные конструкции, итерации и обработку ошибок.
Пример создания хранимой процедуры в MySQL 5:


Достарыңызбен бөлісу:
1   ...   32   33   34   35   36   37   38   39   ...   51




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет