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
Text | Number | Kuupäeva/Loogika |
VARCHAR(255) TEXT CHAT(10) CHARACTER(20) Näited: nimi, isikukood, telefon, kirjeldus | 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 |
таблица – tabel
поле=столбец – väli=veerg
запись=строка – kirje=ride
PIIRANGUD – Ограничения
- PRIMARY KEY – первичный ключ – primaarne võti – уникальным образом индетифицирует строку таблицы, каждой строчке присваивает свой номер
- IDENTITY(1,1) – sql serberor – настройка для первичного ключа
- FOREIGN KEY – внешний/ вторичный ключ – определяет внешний ключ который задает связь между двумя таблицами (связь с первичным ключом другй таблицы)
- Query – päring – запрос
- UNIQUE – неповторяющиемя значения
- NOT NULL – не пустое поле
- CHECK-?
--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;
--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 liisamine tabelisse INSERT INTO opilane(eesnimi, perenimi, synniaeg, opilaskodu) VALUES ('Kirill','Sats', '2007-06-07', 0), ('Gleb','Sõtsjov', '2007-01-02', 0), ('Irina','Merkulova', '1986-01-02', 0), ('Dmitrii','Mitin', '2007-04-02', 1), ('David','Myyrsed', '2007-09-12', 0); SELECT * FROM opilane; DELETE FROM opilane WHERE opilaneID=6;
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 ('TARpv23'); Select * from ryhm; Select * from opilane; --lisada uus veerg tabelisse opilane ALTER TABLE opilane ADD ryhmID int; --täidame ryhm 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(1, 'matemaatika', 5), (3, 'kehaline kasvatus', 5), (4, 'eesti keel', 4), (6, 'inglise keel', 2);