Mis on andmebaasi skeem?
Andmekogu skeem on andmekogu struktuur ja korraldus, mis määrab selle tabelid, väljad, seosed, piirangud ja andmetüübid. See on eeskujuks andmete organiseerimisel ja neile juurdepääsul, andes andmebaasiga töötamisel tegevuskava arendajatele, administraatoritele ja kasutajatele. Skeem on vajalik andmete tõhusaks ja tulemuslikuks haldamiseks, mille tulemuseks on andmebaasi jõudluse suurenemine ja hoolduse lihtsustamine.
Andmebaasi skeemide tüübid
Andmebaasi skeeme on kolme tüüpi, millest igaüks esindab erinevaid vaatenurki ja andmebaasi struktuuri abstraktsioonitasemeid
Füüsikaline skeem
Füüsikaline skeem esitab füüsilise andmebaasi tegeliku struktuuri kettal. See sisaldab salvestusmehhanisme, failistruktuure, indekseid ja muid madala taseme detaile, mis määravad, kuidas andmeid säilitatakse ja neile andmebaaside haldamise põhisüsteemi (SAB) poolt ligi pääsetakse. Seda tüüpi skeem on peamiselt seotud salvestusruumi tõhusa kasutamisega, andmebaasi jõudluse suurendamisega otsingu- ja salvestusoperatsioonide optimeerimise kaudu.
Loogiline skeem
Loogiline skeem on kõrgema taseme abstraktsioon, mis kirjeldab andmebaasi andmete korraldust tabelite, väljade, seoste ja piirangute seisukohast. See ei sõltu füüsilisest skeemist ja keskendub sellele, kuidas andmed on loogiliselt korraldatud ja seotud. Loogiline skeem tagab selge arusaamise andmebaasi ülesehitusest ning aitab arendajatel ja administraatoritel andmebaasiga suhtlevaid rakendusi kavandada ja rakendada, määrates kindlaks, kuidas andmeelemendid on omavahel seotud.
Kontseptuaalne skeem
Kontseptuaalne skeem on abstraktsiooni kõrgeim tase, mis kujutab endast kogu andmebaasi loogilist ettekujutust, kuidas lõppkasutajad või rakenduste arendajad seda tajuvad. See koosneb ühtlustatud olemite, atribuutide ja seoste komplektist, mis esindavad teatud kasutajarühma või rakenduste teabenõudeid. Kontseptuaalse skeemi eesmärk on tabada andmete olemust, pööramata tähelepanu üksikasjadele, mis on spetsiifilised elluviimisele, hõlbustades suhtlemist erinevate huvirühmade vahel, kes on seotud andmebaasi projekteerimise, arendamise ja kasutamisega.
Mudelid :
- “сущности-связи” – OLEMID-SEOSED.
- “сущности-атрибуты-связи” – OLEMID-ATRIBUUTID- SEOSED.
- “иерархическая модель” – hierarhilinemudel.
- “реляционная модель” – relatsioonimudel.
Olemid
opilane: esitab õpilase andmed, eesnimi, perekonnanimi. Emaga on seotud rühm.
ryhm: esitab rühma, rühm nimi, maakond.
Skeema:

Kood:
CREATE TABLE Ryhm(
RyhmID int primary key IDENTITY(1,1),
RyhmNimi varchar(255),
maakond varchar(255));
CREATE TABLE Opilane(
OpilaneID int primary key IDENTITY(1,1),
Eesnimi varchar(255),
Perenimi varchar(255),
ryhmID int,
FOREIGN KEY (ryhmID) REFERENCES Ryhm(RyhmID));
Näita andmed:
INSERT INTO Ryhm(RyhmNimi,maakond)
VALUES('Ryhm1', 'RandomMaakond');
INSERT INTO Ryhm(RyhmNimi,maakond)
VALUES('Ryhm2', 'RandomMaakond2');
INSERT INTO Opilane(Eesnimi,Perenimi,ryhmID)
VALUES('Edvard','Datser',1);
INSERT INTO Opilane(Eesnimi,Perenimi,ryhmID)
VALUES('Artur','Sus',2);
MSSQL Diagrammid

————————————————————–
Andmed lisamine:

Olemid “ArvutiKomplektid”.
Kasutaja tabel: esitab andmed kasutaja kohta, tema nime, parooli, adminniõigused.
Arvutitellimused tabel: annab andmed arvuti tellimise kohta, tellimuse kirjeldus, korpuse olemasolu, monitori olemasolu, kas toode on pakitud, tellimuse number.
TellimusStaatus tabel: annab tellimuse andmed, tellimuse number, kas tellimus on kohale toimetatud.
Php projekt – “ArvutiKomplektid”
Skeemid:


Relatsioonimudel.
Kood:
CREATE TABLE TellimusStaatus(
TellimusID int primary key IDENTITY(1,1),
tellimusNumber varchar(6),
Toimetatud bit
);
CREATE TABLE arvutitellimused(
id int primary key IDENTITY(1,1),
kirjeldus text,
korpus bit,
kuvar bit,
pakitud bit,
tellimusNR int,
FOREIGN KEY (tellimusNR) REFERENCES TellimusStaatus(TellimusID)
);
CREATE TABLE Kasutaja(
KasutajaID int primary key IDENTITY(1,1),
kasutNimi varchar(30),
parool varchar(30),
onAdmin bit
);
Näita andmed:
INSERT INTO TellimusStaatus(tellimusNumber,Toimetatud)
VALUES('65DBA2', 1);
INSERT INTO TellimusStaatus(tellimusNumber,Toimetatud)
VALUES('34NB53', 0);
INSERT INTO Arvutitellimused(kirjeldus,korpus,kuvar,pakitud,tellimusNR)
VALUES('Valge monitor',1,0,0,1);
INSERT INTO Arvutitellimused(kirjeldus,korpus,kuvar,pakitud,tellimusNR)
VALUES('Must korpus',0,1,1,2);
INSERT INTO Kasutaja(KasNimi, parool, onAdmin)
VALUES('Admin', 54BBH324ASJ,1);
INSERT INTO Kasutaja(KasNimi, parool, onAdmin)
VALUES('User', 85J34MOKFD90,0);
MSSQL Diagrammid


————————————————————–
Andmed lisamine:


