Создание функций в sql



Download 41,93 Kb.
Sana28.12.2022
Hajmi41,93 Kb.
#896745
TuriЛабораторная работа
Bog'liq
Лабораторная работа №6 (2)


Лабораторная работа №5
Тема: Создание функций в SQL
Цель работы: Научиться создавать функций в SQL.


Создание, запуск и удаление простой функции
Для создания простой процедуры в клиенте mysql.exeможно выполнить следующие операторы:
DELIMITER //
CREATE FUNCTION Hello_World()
RETURNS VARCHAR(20)
BEGIN
RETURN ‘Hello, world!’;
END
//
Для запуска функции необходимо ввести
SELECT Hello_World()//

Триггер – это специальный тип хранимых процедур, запускаемых сервером автоматически в ответ на изменение таблиц или представлений.
Каждый триггер привязывается к конкретной таблице или представлению.
Триггеры применяются для обеспечения целостности данных и реализации сложной бизнес-логики, а также создания записи аудита о модификации данных
Все производимые триггером модификации данных рассматриваются как одна транзакция. В случае обнаружения ошибки или нарушении целостности данных происходит откат этой транзакции. Тем самым внесение изменений будет запрещено. Будут также отменены все изменения, уже сделанные триггером.

Типы триггеров


Триггеры подразделяются на триггеры языка определения данных (DataDefinitionLanguage – DDL), на триггеры языка манипулирования данными (DataManipulationLanguage – DML) и триггеры входа. Последний тип триггера запускается при регистрации в экземпляре SQL Server.
Триггеры DML используют логические (концептуальные) таблицы DELETED и INSETED. По своей структуре они подобны таблице, на которой определен триггер, то есть таблице, к которой применяется действие пользователя. В таблицах DELETED и INSETED содержатся старые или новые значения строк, которые могут быть изменены действиями пользователя.
По типу изменения данных в таблице существует четыре типа триггеров:
  • Insert trigger – триггеры запускаются при попытке вставки данных с помощью команды insert;


  • UPDATE TRIGGER – триггеры запускаются при попытке изменения данных с помощью команды UPDATE;

  • DELETE TRIGGER – триггеры этого типа запускаются при попытке удаления данных с помощью команды DELETE;

  • Триггеры, создаваемые с учетом одновременного возникновения и совпадения событий.

Синтаксис оператора создания триггера


CREATETRIGGER<имя триггера>
ON[<имясхемы.>]{ <имя таблицы | <имя представления> }
[ WITH ENCRYPTION | EXECUTE AS {>} ]
{ FOR | AFTER | INSTEAD OF }
{ [DELETE] [,] [INSERT] [,] [UPDATE] }
[ WITH APPEND ]
[ NOT FOR REPLICATION ]
AS
{sql_statement| EXTERNAL NAME }
Пример использования баз данных на C++
В качестве примера рассмотрим базу данных вагонов. Каждый вагон имеет номер и фиксированное количество мест. В базе хранится информация обо всех вагонах и о проданных местах. Каждое место связано с каким-либо вагоном
Интерфейс описываемого приложения показан на рис. 2, он содержит:

  • 2 экземпляра QTableView (carView, seatView);

  • 4 экземпляра QLineedit (carID, carNSeats {количество мест в вагоне}, carNSeats {идентификатор вагона в таблице мест}, carNSeats {номер места});

  • 4 экземпляра QPushButton (carRem, carAdd, seatAdd, seatRem).

интерфейс приложения с БД


В основной части программы есть лишь 2 объекта — первый для отображения графического интерфейса, созданного в Qt Designer, второй — экземпляр класса Фасада. Исходный код заголовочного файла главного окна приведен в листинг 1.

Download 41,93 Kb.

Do'stlaringiz bilan baham:




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