Работа с базами данных

Сокращения

  • AB — Andmebaas
  • БД — База Данных
  • СУБД — Система Управления Базой Данных
  • Olem — сущность
  • SQL — Structured Query Launguage
  • DDL — Data Definition Language (это семейство компьютерных языков, используемых в компьютерных программах для описания структуры баз данных. На текущий момент наиболее популярным языком DDL является SQL, используемый для получения и манипулирования данными в РСУБД, и сочетающий в себе элементы DDL, DML и DCL.) 1
  • DML — Data Manipulation Language (работает с записями в таблице) 2 работает с записями в таблице
  • PK — Primary KEY — атрибут или их набор, который уникально определяют строку и не повторяются
  • FK — Foreign KEY — связь между таблицами. Содержит ссылку на PK
  • AUTO_INCREMENT — автоматическое заполнение поля

Задачи базы данных

  • Хранение данных
  • Возможность получения данных по запросу
  • Целостность данных

Типы данных

  • Числовые: int, smallint, tinyint, decimal(4,1) — это число 1 знак после запятой, 4 всего знаков/ arv 1 pärast koma, 4 kokku arv
  • Текстовые или символьные: varchar(10) kus 10 — max sümbolite arv. char(11)
  • Логические: Boolean, bool,bit, true/false
  • Date/time. Date. Time. Datetime
  • Хранитель временного интервала — interval

СУДБ

  • MS Access
  • Oracle
  • MS SQL

Запись, поле, таблица

  • Строки -> записи
  • Столбцы ->поля

Запросы

Tabeli loomine

CREATE TABLE opilane(
opilaneID int PRIMARY KEY AUTO_INCREMENT,
eesnimi varchar(20) not null,
perenimi varchar(30) not null,
isikukood char(11),
synniaeg date)


INSERT INTO opilane(eesnimi,perenimi,synniaeg,isikukood)
VALUES('Mark', 'Adler', '2002-22-08', '50603220227');

INSERT INTO opilane(eesnimi,perenimi,synniaeg,isikukood)
VALUES('Merk', 'Adler', '2002-11-22', '50603234227');

INSERT INTO opilane(eesnimi,perenimi,synniaeg,isikukood)
VALUES('Elina', 'Adler', '2006-02-10', '50606789227');


ALTER TABLE opilane ADD COLUMN synnikoht varchar(20) 

определенному ид выдает
UPDATE opilane SET synnikoht='Tallinn'
WHERE opilaneID=1;
SELECT * FROM opilane

CREATE TABLE hindamine(
    hindamineID int PRIMARY KEY AUTO_INCREMENT, 
    opilaneID int,
    FOREIGN KEY (opilaneID) REFERENCES opilane(opilaneID),
    oppeaine varchar (12),
    hinne int)



CREATE TABLE ryhm(
ryhmID int PRIMARY KEY AUTO_INCREMENT,
ryhmNimi varchar(20) not null,
osakond varchar(30) not null,
FOREIGN KEY (ryhmajuhatajaID) REFERENCES ryhmajuhataja(ryhmajuhatajaID),
ryhmajuhatajaID varchar (20));

CREATE TABLE ryhm(
ryhmID int PRIMARY KEY AUTO_INCREMENT,
ryhmajuhatajaID int,
FOREIGN KEY (ryhmajuhatajaID) REFERENCES ryhmajuhataja(ryhmajuhatajaID),
ryhmNimi varchar(20) not null,
osakond varchar(30))

INSERT INTO ryhmajuhataja(eesnimi,perenimi)
VALUES('Mark', 'Adler');

Ответы на тест: