wiki:advancedReports-ER-Algebra

Version 4 (modified by 192063, 2 days ago) ( diff )

--

Напреден развој на датабаза (Тригери, погледи)

Пред да креираме тригери и погледи, креираме една табела за внес на тоа дали логинот бил успешен или не.

SQL код:

CREATE TABLE Login_Attempt (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    user_id UUID,
    email VARCHAR(100) NOT NULL,
    successful BOOLEAN NOT NULL,
    ip_address INET,
    attempt_date TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (user_id) REFERENCES Korisnik (id)
);

Бидејки тригерите не можат да запишуваат во view, ќе креираме една генерална табела за запишување на логови.

CREATE TABLE System_Event (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    user_id UUID NOT NULL,
    user_email VARCHAR(100) NOT NULL,
    event_type VARCHAR(100) NOT NULL,
    description TEXT NOT NULL,
    event_date TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP,
    FOREIGN KEY (user_id) REFERENCES Korisnik(id)
);
Note: See TracWiki for help on using the wiki.