Методическое пособие к лабораторным работам по курсу «База данных» Ташкент 2020


| { CONTAINS SQL | NO SQL | READS SQL DATA



Download 3,29 Mb.
bet64/87
Sana29.04.2022
Hajmi3,29 Mb.
#591220
TuriМетодическое пособие
1   ...   60   61   62   63   64   65   66   67   ...   87
Bog'liq
1648461350 (2)

| { CONTAINS SQL | NO SQL | READS SQL DATA
| MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
тело_подпрограммы: оператор программы SQL


COMMENT — это расширение MySQL. Она используется для описания хранимой подпрограммы, и данная информация отображается с помощью оператора SHOW CREATE PROCEDURE.
LANGUAGE указывает на то, что тело процедуры написано на SQL.
NOT DETERMINISTIC. Это информационная характеристика. Процедура считается «детерминированной«, если она всегда дает тот же результат для одних и тех же входных параметров, иначе она является «не детерминированной».
CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA
CONTAINS SQL означает, что в хранимой процедуре MySQL нет никаких заявлений, которые считывают или записывают данные. Например, заявления SET @x = 1 или DO RELEASE_LOCK(‘abc’), они выполняются, но не считывают и не записывают данные. Это значение по умолчанию, если не указано другое значение характеристики.
NO SQL означает, что процедура не содержит операторов SQL.
READS SQL DATA — процедура содержит операторы, которые считывают данные (например, SELECT), но не содержит операторов, которые записывают данные.
MODIFIES SQL DATA-означает, что подпрограмма содержит операторы, которые могут записывать данные (например, INSERT или DELETE).


DEFINER_|_INVOKER}__Значение_SQL_SECURITY'>SQL SECURITY {DEFINER | INVOKER}

Значение SQL SECURITY может быть определено либо как SQL SECURITY DEFINER, либо как SQL SECURITY INVOKER. Оно указывает, выполняется ли подпрограмма с использованием привилегий аккаунта, указанного в условии DEFINER, или аккаунта пользователя, который осуществляют MySQL вызов хранимой процедуры. Этот аккаунт должен иметь разрешение на доступ к базе данных, с которой связана подпрограмма. Значение по умолчанию DEFINER. Пользователь, который запускает процедуру, должен иметь привилегию EXECUTE, если процедура выполняется в контексте безопасности DEFINER.


Все перечисленные блоки характеристик имеют значения по умолчанию. 

Пример выполнения задания для предметной области «Запись на прием»:


Для выполнения нескольких операций с данными создадим функцию, которая будет выводить сообщение. После DELIMITER нельзя использовать символ \\. Система выдаст ошибку. Поэтому используем другие символы. Функция называется hello(). Эта функция как аргумент принимает символьное значение. И так же возвращает результат типа char.

Рис. 16.1. Создание функции и её использование.

Вызвать функцию можно через оператор select. Конечно же как аргумент этой функции пишем текст.


Можно также использовать системные функции и получить результат.

Рис. 16.2. Использование созданной и системной функций.

Создадим другую функцию. При создании функций можно применять разные инструкции. В данном примере используется инструкция WHILE.








Download 3,29 Mb.

Do'stlaringiz bilan baham:
1   ...   60   61   62   63   64   65   66   67   ...   87




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish