[SQL][MySQL] Trzy zadania z wyzwalaczy
: 30 maja 2016, o 13:25
Witam, prosiłabym o pomoc w rozwiązaniu trzech zadań. Będę bardzo wdzięczna za pomoc.
1. Przygotuj wyzwalacz, który zablokuje konto użytkownika, gdy liczba nieudanych prób logowania przekroczy 3.
2. Przygotuj wyzwalacz, który uniemożliwi wstawienie rekordu jeżeli wiek użytkownika nie przekracza 18 lat.
3. Przygotuj procedurę, która dopisze konto użytkownika do odpowiedniej tabeli w zależności od wybranej roli.
1. Przygotuj wyzwalacz, który zablokuje konto użytkownika, gdy liczba nieudanych prób logowania przekroczy 3.
Kod: Zaznacz cały
CREATE DATABASE IF NOT EXISTS mojaAplikacja;
USE mojaAplikacja;
CREATE TABLE IF NOT EXISTS Autoryzacja(
idUzytkownika INT PRIMARY KEY AUTO_INCREMENT,
login VARCHAR(50) NOT NULL,
password VARCHAR(64) NOT NULL,
liczbaNieudanychProb SMALLINT,
czasOstatniegoLogowania TIMESTAMP,
kontoZablokowane BOOLEAN
);
INSERT INTO Autoryzacja SELECT NULL, "jkowalski", SHA2('pies', 256), 1, NULL, FALSE;
INSERT INTO Autoryzacja SELECT NULL, "mnowak", SHA2('kot', 256), 1, NULL, FALSE;
INSERT INTO Autoryzacja SELECT NULL, "kzablocki", SHA2('ptak', 256), 1, NULL, FALSE;
INSERT INTO Autoryzacja SELECT NULL, "lhostman", SHA2('ryba', 256), 1, NULL, FALSE;
Kod: Zaznacz cały
CREATE DATABASE IF NOT EXISTS rejestracjaUzytkownika;
USE rejestracjaUzytkownika;
CREATE TABLE IF NOT EXISTS Uzytkownik(
idUzytkownika INT PRIMARY KEY AUTO_INCREMENT,
nazwisko VARCHAR(50) NOT NULL,
imie VARCHAR(64) NOT NULL,
dataUrodzenia Date
);
Kod: Zaznacz cały
CREATE DATABASE IF NOT EXISTS kontrolaDostepu;
USE kontrolaDostepu;
CREATE TABLE IF NOT EXISTS Uzytkownicy(
idUzytkownika INT PRIMARY KEY AUTO_INCREMENT,
login VARCHAR(50) NOT NULL,
haslo VARCHAR(64) NOT NULL,
rola varchar(5)
);
CREATE TABLE IF NOT EXISTS Administratorzy(
idUzytkownika INT PRIMARY KEY AUTO_INCREMENT,
login VARCHAR(50) NOT NULL,
haslo VARCHAR(64) NOT NULL,
rola varchar(5)
);