1-mavzu. Ma’lumotlar bazasi obyektlarini yaratish


AFTER: Amal tugagandan so'ng ishga tushadi. Faqat jadvallar uchun ishlatiladi. INSTEAD OF



Download 0,87 Mb.
bet31/48
Sana23.06.2022
Hajmi0,87 Mb.
#694675
1   ...   27   28   29   30   31   32   33   34   ...   48
Bog'liq
мавзулар MBDM

AFTER: Amal tugagandan so'ng ishga tushadi. Faqat jadvallar uchun ishlatiladi.

  • INSTEAD OF: amal o'rniga sihga tushadi (ya'ni aslida amal - qo'shish, o`zgartirish yoki o'chirish - umuman bajarilmaydi). Jadvallar va ko`rinishlar uchun ishlatiladi.

    Trigger turidan keyin trigger aniqlangan amalning amal keladi: INSERT, UPDATE yoki DELETE.
    Trigger uchun AFTER bir vaqtning o`zida UPDATE va INSERT kabi bir nechta amallarga qo`llanilishi mumkin. Bunda amallar vergul bilan ajratiladi. INSTEAD OF trigger uchun faqat bitta amalni aniqlash mumkin.
    Keyin AS so`zi, undan keyin trigger tanasini tashkil etadigan SQL instruksiyalari to'plami keladi.
    Aytaylik, bizda quyidagi mazmunga ega productsdb ma`lumotlar bazasi mavjud:
    CREATE DATABASE productdb;
    GO
    USE productdb;
    CREATE TABLE Products
    (
    Id INT IDENTITY PRIMARY KEY,
    ProductName NVARCHAR(30) NOT NULL,
    Manufacturer NVARCHAR(20) NOT NULL,
    ProductCount INT DEFAULT 0,
    Price MONEY NOT NULL
    );

    Ma`lumotlarni qo'shganda va yangilashda chaqiriladigan triggerni aniqlaylik:


    USE productdb;
    GO
    CREATE TRIGGER Products_INSERT_UPDATE
    ON Products
    AFTER INSERT, UPDATE
    AS
    UPDATE Products
    SET Price = Price + Price * 0.38
    WHERE Id = (SELECT Id FROM inserted)

    Faraz qilaylik, Products jadvali mahsulot ma`lumotlarini saqlaydi. Ammo mahsulot narxi ko'pincha qo'shimcha qiymat solig'I va boshqalar kabi turli xil ustama yozuvlarni o`z ichiga oladi. Ma`lumotlarni qo'shadigan shaxs ushbu soliq bazasining barcha murakkabliklarini bilmasligi mumkin va ular aniq narxni belgilaydi. Trigger yordamida biz mahsulot narxini sozlashimiz mumkin.


    Trigger Products jadvalidagi har qanday INSERT yoki UPDATE operasiyasidaishga tushadi. Trigger o`zi mahsulot narxini o`zgartiradi. Qo'shilgan yoki o`zgartirilgan mahsulotni olish uchun biz mahsulot Id sini topamiz. Ammo bunday mahsulotning identifikatori qanday qiymatga ega bo'lishi kerak? Gap shundaki, qo'shganda yoki o`zgartirilganda ma`lumotlar inserted oraliq jadvalida saqlanadi. U avtomatik ravishda yaratiladi. Undan biz qo'shilgan/o`zgartirilgan mahsulotlar haqida ma`lumot olishimiz mumkin.
    Products jadvaliga mahsulot qo'shilgandan so'ng, mahsulot qo'shilganda ko`rsatilgan narxdan bir oz yuqoriroq bo'ladi:

    Triggerni o’chirish


    Triggerni o’chirish uchun DROP TRIGGER operatori qo`llaniladi.
    DROP TRIGGER Products_INSERT_UPDATE



    Download 0,87 Mb.

    Do'stlaringiz bilan baham:
  • 1   ...   27   28   29   30   31   32   33   34   ...   48




    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