AB kasutajate rollid:
- AB kasutaja – tavakasutaja, mis saab muuta, lisada, filtreerida ja otsida vastavalt vajadusele.
- AB programmeerija – loob funktsioonid ja protseduurid (trigerid).
- DBA – AB administraator – tagab, et õiged kasutajad saavad oma õigused.
- AB projekteerija – loob tabeleid ja struktuuri.
DBA – AB administraator liigid:
- Süsteemiadmin
- AB arhitekt
- AB analüütik
- Data warehouse admin (админ хранилища данных) – andmeladu
DBA kaks peamist eesmärki (ülesanded):
- Kasutajate toetus ja ligipääsu jagamine ja seadistamine.
- AB Turvalisus ja jõudluse tagamine.
AB Turvalisus – 3 põhiaspekti
- Andmete konfidentsiaalsus (confidentiality)
GRANT role to user [identified by pwd] [with grant option];
REVOKE role from user;
- Andmete kättesaadavus (availability/доступность) – andmed me saame kätte õigel ajal ja õigel kasutajal.
- Andmete terviklikkus (integrity/целестность) – usaldusväärne andmeallikad
| Risk | Ohutuse aspekt |
| Inimlikud vead | konfidentsiaalsus, kättesaadavus, terviklikkus |
| Füüsilised vead (riistvara) | terviklikkus, kättesaadavus |
| Operatsioonisüsteemi rikked | Kättesaadavus, terviklikkus, Konfidentsiaalsus |
| Andmebaasisüsteemi rikked | Kättesaadavus, terviklikkus, Konfidentsiaalsus |
- COMMIT – käsk, mida kasutatakse tavaliselt pärast mitmeid INSERT-, UPDATE- või DELETE-operatsioone, et tagada muudatuste salvestamine andmebaasi.
- ROLLBACK – käsk, mida kasutatakse transaktsiooni poolt tehtud muudatuste tagasipööramiseks.
- ROLLFORWARD – käsk, mida kasutatakse logifailides sisalduvate transaktsioonide edasiarendamiseks määratud asukohas.
- Data Mining – (поиск скрытых шаблонов) protsess, kus otsitakse suurtest andmekogudest kasulikke mustreid ja infot.
- Data Warehouse – suur andmeladu, kuhu kogutakse palju andmeid, et neid hiljem lihtsamalt vaadata ja kasutada.
GROUP BY – rühmitab andmed valitud veergude alusel, et teha kokkuvõtteid (nt SUM, COUNT).
SELECT Country, Gender, SUM(Salary) AS TotalSalary
FROM Employees
GROUP BY Country, Gender
UNION ALL – ühendab mitu päringut, säilitades kõik read, ka duplikaadid.
SELECT Country, Gender, SUM(Salary) AS TotalSalary
FROM Employees
GROUP BY Country, Gender
UNION ALL
SELECT Country, NULL, SUM(Salary) AS TotalSalary
FROM Employees
GROUP BY Country
GROUPING – võimaldab määrata, kuidas andmeid grupeeritakse, kasutades GROUPING SETS, ROLLUP või CUBE.
SELECT Country, Gender, SUM(Salary) AS TotalSalary
FROM Employees
GROUP BY
GROUPING SETS
(
(Country, Gender),
(Country),
(Gender),
()
)
ROLLUP – summerib hierarhiliselt valitud veergud.
SELECT Country, SUM(Salary) AS TotalSalary
FROM Employees
GROUP BY ROLLUP(Country)
CUBE – arvutab summad igas veerus/kombinatsioonis.
SELECT Continent, Country, City, SUM(SaleAmount) AS TotalSales
FROM Sales
GROUP BY CUBE(Continent, Country, City)
Erinevus ROLLUP ja CUBE – ROLLUP summerib hierarhiliselt valitud veergud, CUBE arvutab summad igas veerus/kombinatsioonis.
AB SQL-i võtmed
- Primary key
- Foreign key
- Unique key
- Simple key
- Composite key / Compound key
- Superkey
- Candidate key
- Alternate key
1. Primary key
Primary key on tabeli väli, mis unikaalselt määrab iga rea. Selle väärtus ei kordu ja ei tohi olla tühi.
Tavaliselt kasutatakse Primary key’ga Identity’t, mis genereerib väärtuse automaatselt.
Näide:
CREATE TABLE Turniir (
TurniirID int PRIMARY KEY IDENTITY(1,1),
TurniirNimi varchar(50),
);
2. Foreign key
Foreign key on tabeli väli, mis viitab teise tabeli primaarvõtmele. See loob seose kahe tabeli vahel ja aitab tagada, et andmed oleksid omavahel õigesti seotud.
Näide:
CREATE TABLE Võistlus (
VoistlusID int PRIMARY KEY IDENTITY(1,1),
VostlusNimi varchar(50),
OsalejateArv int,
TurniirID int FOREIGN KEY REFERENCES Turniir(TurniirID),
);
3. Unique key
Unique key on väli või väljade kombinatsioon, mille väärtused ei tohi korduda, kuid võivad olla tühjad (NULL). See tagab, et kõik väärtused selles veerus on andmebaasis ainulaadsed.
Näide:
CREATE TABLE Persons (
ID int UNIQUE,
LastName varchar(255),
FirstName varchar(255),
Age int
);
4. Simple key
Simple key on üksainus väli, mis toimib primaar või unikaalvõtmena.
Näide:
CREATE TABLE Opilased (
opilaseId int PRIMARY KEY,
eesnimi varchar(50),
perenimi varchar(50)
);
5. Composite key / Compound key
Composite key/Compound key on võti, mis koosneb mitmest veerust, et üheselt identifitseerida iga rida, kuna üks veerg üksi ei ole unikaalne.
Näide:
CREATE TABLE KursuseleRegistreerumised (
opilaseId int,
kursuseId int,
registreerumiseKuupaev date,
PRIMARY KEY (opilaseId, kursuseId)
);
6. Superkey
Superkey on võti, mis ükskõik millise rea üheselt määrab, isegi kui mõned veerud selles võtmes pole vajalikud unikaalsuse tagamiseks.
Näide:
CREATE TABLE Student (
studentId int,
name varchar(50),
address varchar(100),
phone varchar(15), -- minimaalne superkey
PRIMARY KEY (opilaseId) -- minimaalne superkey
);
studentId – piisab iga õpilase tuvastamiseks.
studentId, phone – ka superkey, kuigi phone pole vajalik.
7. Candidate key
Candidate key on minimaalne võti, mis unikaalselt tuvastab iga rea tabelis.
Näide:
CREATE TABLE Student (
studentId int,
email varchar(100), -- candidate key
name varchar(50),
PRIMARY KEY (studentId) -- candidate key
);
Candidate key selles tabelis: studentId ja email (kui iga e-post on unikaalne).
Mõlemad võivad toimida Primary key, aga kumbki ei sisalda üleliigseid veerge.
8. Alternate key
Alternate key on võti mis tahes Primary key, mida ei ole valitud esmaseks võtmeks.
CREATE TABLE CUSTOMERS(
ID INT,
NAME VARCHAR (20),
AGE INT,
AADHAAR_ID BIGINT, -- alternate key
MOBILE_NO BIGINT, -- alternate key
SALARY DECIMAL (18, 2),
PRIMARY KEY(ID)
);