Andmebaasid

Milleks on vaja andmebaas?
–Andmete salvestamine, säilitamine ja korrastamine

–Andmebaas = AB - andmete korrastatud kogum

–Andmete korrastamiseks on vaja andmebaasi haldamise tarkvara(СУБД – система управление базами данных – MS SQL Server, XAMPP/localhost/phpmyAdmin, MS Access)

Andmetüübid

TextNumberKuupäeva/Loogika
VARCHAR(255)
TEXT
CHAR(10)
CHARACTER(20)
Näited: nimi, isikukood, nimi
INT
SMALLINT
BITE
Numeric(5,2)
Decimal(5,2) – десятичное число, где 2 – количество знаков после запятой, а 5 – всего знаков
Counter – счетчик
Näited: palk, vanus, pikkus, kaal jne.
date/time
date
time
INTERVAL – для хранения временного интервала
Логический – BOOL, BOOLEAN, BIT, Yes/No, True/False
Näited: kell

Таблица – tabel
Поле = столбец – Väli = veerg
Запись = строка – Kirje = rida

Piirangud – ограничения:
——————————-
1. PRIMARY KEY – первичный ключ – primaarne võti – уникальным образом идентифицирует строку таблицы, каждой строчке присваивает свой номер

(IDENTITY(1,1) – SQL server или
AUTO_INCREMENT – XAMPP – настройка для поля первичного ключа – заполняется автоматически возрастающими числовыми значениями

2. FOREIGN KEY – внешний/ вторичный ключ – определяет внешний ключ, который задает связь между двумя таблицами( связь с первичным ключом другой таблицы)
3. UNIQUE – неповторяющиеся значения
4. NOT NULL – не пустое поле
5. CHECK – ?

SQL Server managment Stuudio – (localdb)\mssqlocaldb

--Tabeli loomine
create table opilane (
opilaneID int Primary Key identity(1, 1),
eesnimi varchar(50),
perenimi varchar(50),
synniaeg date,
opilaskodu bit)
select * from opilane;

--Andmete lisamine tabillise
INSERT INTO opilane(eesnimi, perenimi, synniaeg, opilaskodu)
values ('Irina', 'Merkulova', '1976-04-07', 0),
('Kirill', 'Sats', '2007-06-07', 0),
('Martin', 'Sild', '1976-04-07', 0);
select * from opilane;
delete from opilane where opilaneID = 31;
delete from opilane where opilaneID = 23;
delete from opilane where opilaneID = 24;
delete from opilane where opilaneID = 29;
delete from opilane where opilaneID = 28;
delete from opilane where opilaneID = 30;
delete from opilane where opilaneID = 27;
create table ryhm(
ryhmID int not null primary key identity(1,1),
ryhmnimi char(8) unique);
select * from ryhm;
--lisamine
insert into ryhm(ryhmnimi)
values('TARpv22');
select * from ryhm;
select * from opilane;
--lisada uus veerg tabellisse opilane
alter table opilane add ryhmID int;
-- täidame ryhmID tabelis opilane
update opilane set ryhmID = 1;
-- foreign key
alter table opilane add foreign key
(ryhmID) references ryhm(ryhmID);
create table hindamine(
hindamineID  int not null primary key identity(1,1),
opilaneID int,
aine varchar(50),
hinne int);
select * from hindamine;
select * from opilane;
alter table hindamine add foreign key
(opilaneID) references opilane(opilaneID);

insert into hindamine(opilaneID, aine, hinne)
values (3, 'multimeedia', 3);