Professional Documents
Culture Documents
База на податоци
• Базите на податоци и системите за управување со бази на податоци се присутни
во сите сегменти од современото општество – сите ние секојдневно се среќаваме
со некакви активности кои вклучуваат одредена интеракција со базата на
податоци.
• Примери за интеракција со база на податоци:
• Ако одиме во банка да депонираме или повлечеме средства,
• Ако направиме хотелска или резервација со авиокомпанија,
• Ако имаме пристап до компјутеризиран каталог на библиотека, за да бараме
библиографска област
• Ако набавиме нешто преку Интернет - како што е книга, играчка или компјутер
• При купување на предмети во супермаркет често автоматски
• Овие активности ја ажурираат соодветната база на податоци. Ова се примери за
традиционални бази на податоци.
База на податоци
Видови на бази на податоци:
- Мултимедиски: слики, аудио и видео
- Географски информациони системи:
географски мапи, метеоролошки
податоци, сателитски слики
- Data warehouse, online analytical
processing (OLAP): за анализа на бизнис
податоци и донесување одлуки
- Активни БП и БП во реално време: се
користат во индустриски процеси.
https://penmypaper.com/blog/latest-database-trends-for-2020/
База на податоци
• База на податоци е колекција на податоци кај кои постои
меѓусебна поврзаност.
• Базите на податоци денес се присутни во сите сфери на животот
каде што се користат компјутерите: бизнис, електронска трговија
инженерство, медицина, генетика, право, безбедност,
едукација...
База на податоци: карактеристики
• Базата на податоци претставува одреден аспект на реалниот свет,
понекогаш наречен мини свет. Промени во мини-светот се
рефлектираат во базата на податоци.
• Базата на податоци е логична и кохерентна колекција на
податоци со одредено значење. Случаен асортиман на податоци
не може правилно да се нарече база на податоци.
• Базата на податоци е дизајнирана, изградена и пополнета со
податоци за одредена намена. Секоја база на податоци има
наменета група на корисници како и одредени апликации кои се
од интерес на овие корисници.
База на податоци
• Базата на податоци има одреден извор од кој произлегуваат
податоците, одреден степен на интеракција со настани во реалниот
свет и публика која е активно заинтересирана за содржините на
базата на податоци.
• Крајните корисници на базата може да вршат деловни трансакции
(на пример, клиент купува камера) или може да се случат настани
(на пример, вработен има бебе) кои предизвикуваат промена на
информациите во базата на податоци. Со цел базата на податоци да
биде точна и сигурна во секое време, таа мора да биде вистински
одраз на мини светот што го претставува; затоа, промените мора да
се рефлектираат во базата на податоци што е можно поскоро.
Систем за управување со бази на податоци
• Систем за управување со базата на податоци (СУБП) е збирка програми што им
овозможуваат на корисниците да креираат и одржуваат база на податоци. СУБП е
софтверски систем со општа намена што ги олеснува процесите на дефинирање,
конструирање, манипулирање и споделување бази на податоци меѓу различни корисници и
апликации.
• Дефинирање на база на податоци вклучува прецизирање на типовите податоци, као и
структурите и ограничувањата на податоците што треба да се чуваат во базата на податоци.
• Конструирање на базата на податоци е процес на зачување на податоците на некој медиум
за складирање што е контролиран од страна на СУБП.
• Манипулрање на базата на податоци вклучува функции како што се пребарување на базата
на податоци за преземање на специфични податоци, ажурирање на базата на податоци со
цел да ги одрази промените во мини-светот, и генерирање извештаи од податоците.
• Разменување на базата на податоци овозможува повеќе корисници и програми да можат
истовремено да пристапуваат до базата на податоци.
Моделирање на бази на податоци
• При креирање на база на податоци потребно е претходно да се направи модел на
податоци.
• Моделите на податоци ги претставуваат – нештата (ентитети или објекти) што се
значајни за некој систем, бизнис и сл. Тие илустрираат како нештата кои се
релевантни за дадениот систем или мини-свет, кој е предмет на интерес, се
поврзани меѓусебно.
• Моделите на податоци се креираат постепено во неколку фази, се модификуваат во
тек на процесот се додека не се постигне соодветна претстава на реалниот систем.
• Моделите се користат за да се креираат апликации и да се имплементираат бази на
податоци.
• Концептуално моделирање е процес кој му претходи на процесот на креирање на
база на податоци.
Концептуално моделирање
• Моделите ги предодредуваат начините според кои податоците ќе
се организираат, чуваат и пребаруваат. Перформансите на овие
операции многу зависат од правилно креираниот концептуален
модел на податоци.
• Постојат повеќе видови на модели на бази на податоци
• Ние ќе го изучиме релациониот модел на бази на податоци, каде
што податоците се сместени во табели, како и ентитет-релација
(ЕР) концептуалниот модел.
Главни елементи кај ентитет-релација
концептуален модел на БП
• Главни елементи на ЕР модел:
• Ентитети
• Атрибути
• Клучеви
• Релации
• Референцијален интегритет
• Бидејќи во фокусот се ентитетите и релациите помеѓу нив, овој
модел е познат под името ентитет-релација (ЕР).
• Прв чекор кон креирање на модел е собирање и анализа на
корисничките барања.
Ентитет
• Ентитетите одговараат на нешта, објекти од интерес.
• Пример Ентитет
Клуч
Вработен Оддел
Вработен ИД Оддел ИД
Име 1 N Назив
Презиме
Адреса
Оддел ИД
Клучеви
• Секогаш кога додаваме нов вработен, Оддел ИД мора да има
валиден број на постоечки Оддел!
Клуч
Вработен Оддел
Вработен ИД Оддел ИД
Име 1 N Назив
Презиме
Адреса
Оддел ИД
Надворешни клучеви (композитни)
• Пример за авиокомпанија и резервација на авио-билети
Клуч
Лет Седиште
Надворешен
Лет ИД Седиште ИД клуч, во овој
Дата 1 N Лет ЛетИД случај мора
ВремеПолетување ОписСедиште да биде дел
ВремеПристигање СтатусСедиште од клучот.
Надворешни клучеви (N-N)
• Пример за компанија за изнајмување автомобили
Клуч
Автомобил Возач
Автомобил ИД Возач ИД
МаркаАвтомобил N N ИмеПрезиме
БројДозвола
Надворешни клучеви (N-N)
• Пример за компанија за изнајмување автомобили
Клуч
Автомобил Возач
ВозачАвтомобил
Автомобил ИД Возач ИД
МаркаАвтомобил 1-N 1-N ИмеПрезиме
БројДозвола
Надворешни клучеви (N-N)
• Пример за компанија за изнајмување автомобили
Клуч
Автомобил Возач
ВозачАвтомобил
Автомобил ИД Возач ИД
МаркаАвтомобил 1-N 1-N ИмеПрезиме
АвтомобилИД БројДозвола
ВозачИД
Надворешни клучеви (N-N)
• Пример за компанија за изнајмување автомобили
Клуч
Автомобил Возач
ВозачАвтомобил
Автомобил ИД Возач ИД
МоделАвтомобил 1-N АвтомобилИД 1-N ИмеПрезиме
ВозачИД БројДозвола
ДатумПоч
ДатумЗаврш.
Пример за креирање на табели
Оддел Локација
Финансии Аеродром
Продажба Центар
SQL (Structured Query Language)
• Програмски јазик наменет за зачувување, ажурирање и
манипулации со податоци.
• Овозможува креирање на база на податоци директно од ентитет-
релација ЕР дијаграмот.
• Овозможува ажурирање на податоци како бришење, додавање,
промена или пребарување: корисникот или програмот може да
изврши DELETE, INSERT, UPDATE или пребарување (SELECT) на
податоци.
• Пребарување може да се врши според зададени услови и можно
е да се пребаруваат податоци од повеќе табели.
SQL наредба SELECT
SELECT се состои од повеќе инструкции што овозможува да се селектираат
податоци од повеќе колони и редови. Мора да се почитува следниов
редослед:
– SELECT columns/attributes
– INTO new table
– FROM table or view
– WHERE specific rows or a join is created
– GROUP BY grouping conditions (columns)
– HAVING group-property (specific rows)
– ORDER BY ordering criterion ASC | DESC
Пример SELECT
• SELECT Name, Sales, Quota FROM SalesTable
Во овој пример со наредбата SELECT ги селектираме сите податоци од колоните Name, Sales,
Quota од табелата наречена SalesTable.
Solution:
Peter Jones, 3500, 750000 Само овој запис го задоволува условот Quota>600000!
Пример креирање на база на податоци и
креирање на табела
Најпрвин се креира базата на податоци која ќе содржи повеќе табели.
Креирање на табела:
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
....
);
Пример INSERT
• INSERT INTO SalesTable(ID, Name, Department, Quota,Sales) VALUES
(‘5’, ‘Dashiel Brown’,‘Dept1’,, 200000, 0);