Садржај
1 Релационе базе података
1.0 1 Релационе базе података
1.0 2 Релационе базе података - квиз
1.0 3 Веза један према више
1.0 4 Веза један према више - квиз
1.0 5 Веза више према више
1.0 6 Веза више према више - квиз
1.0 7 Алат за пројектовање
1.0 8 СУБП
1.0 9 Креирање базе на други начин
1.0 10 Још неке SQL команде
1.1 1 Упит SELECT
1.1 2 Упит SELECT - упит из једне табеле - задаци
1.1 3 Упит SELECT - упит из једне табеле - квиз
1.1 4 Упит SELECT - функције и подупити - задаци
1.1 5 Упит SELECT - функције и подупити - квиз
1.1 6 Упит SELECT - спајање - задаци
1.1 7 Упит SELECT - спајање - квиз
1.1 8 Упит SELECT - нерешени задаци
1.2 1 База података за библиотеку - креирање базе
1.2 2 БП Библиотека - Упит SELECT - упит из једне табеле - задаци
1.2 3 БП Библиотека - Упит SELECT - упит из једне табеле - нерешени задаци
1.2 4 БП Библиотека - Упит SELECT - спајање - задаци
1.2 5 БП Библиотека - Упит SELECT - спајање - нерешени задаци
1.2 6 БП Библиотека - Упит SELECT - функције и подупити - задаци
1.2 7 БП Библиотека - Упит SELECT - функције и подупити - нерешени задаци
1.3 1 База података за возачке дозволе - креирање базе
1.3 2 БП Возачке дозволе - Дијаграм и подаци - практичан рад
1.3 3 БП Возачке дозволе - Упит SELECT - задаци
1.3 4 БП Возачке дозволе - Упит SELECT - нерешени задаци
1.4 1 БП Филмови - Креирање базе - практични рад
1.4 2 БП Филмови - Дијаграм и подаци - практични рад
1.4 3 БП Филмови - Упит SELECT - задаци
1.4 4 БП Филмови - Упит SELECT - нерешени задаци
2 Писање програма унутар система за управљање базама података
2.0 1 Процедуре и команда INSERT
2.0 2 Процедуре и команде UPDATE и DELETE
2.0 3 Процедуре и команде INSERT, UPDATE, и DELETE - квиз
2.0 4 Процедуре и тестирање програма
2.0 5 Процедуре и упит SELECT
2.0 6 Процедуре и курсор за упит SELECT
2.1 1 Функције и упит SELECT
2.1 2 Процедуре и функције са упитом SELECT - квиз
2.1 3 Процедуре и функције са упитом SELECT из једне табеле - задаци
2.1 4 Процедуре и функције са упитом и групним функцијама - задаци
2.1 5 Процедуре и функције са упитом SELECT са спајањем табела - задаци
2.1 6 Процедуре и функције са упитом - нерешени задаци
2.1 7 Формат XML
2.2 1 База података за библиотеку - Процедуре, функције и поређење различитих решења
2.2 2 Процедуре, функције и поређење различитих решења
2.2 3 Процедуре и функције са упитом SELECT из једне табеле - вежбање
2.2 4 Процедуре и функције са упитом SELECT са спајањем табела - вежбање
2.2 5 Процедуре и функције са упитом и групним функцијама и подупитима - вежбање
2.2 6 Процедуре и функције са упитом SELECT - нерешени задаци
2.3 1 База података за возачке дозволе - процедуре и функције са упитом SELECT - вежбање
2.3 2 База података за возачке дозволе - процедуре и функције - нерешени задаци
2.4 1 База података за филмове - процедуре и функције са упитом SELECT - вежбање
2.4 2 База података за филмове - процедуре и функције - нерешени задаци
3 Писање програма у програмским језицима вишег нивоа
3.0 1 Писање програма у развојном окружењу Visual Studio
3.0 2 Писање програма у развојном окружењу Visual Studio - практичан рад
3.0 3 Писање програма у развојном окружењу Visual Studio - процедуре
3.0 4 Писање програма у развојном окружењу Visual Studio - квиз
3.1 1 Угнежђени упит SELECT унутар програма
3.1 2 Угнежђени упит SELECT унутар програма - задаци
3.1 3 Позив процедуре унутар програма
3.1 4 Позив креиране функције унутар програма
3.1 5 Програм са угнежђеним командама у развојном окружењу Visual Studio - квиз
3.1 6 Програм са угнежђеним упитом SELECT из једне табеле - вежбање
3.1 7 Програм са угњежђеним упитом и групним фунцкијама - вежбање
3.1 8 Програм са угнежђеним упитом SELECT са спајањем табела - вежбање
3.1 9 Програм са класом
3.1 10 Програм са угнежђеним упитом - нерешени задаци
3.1 11 Програм са угнежђеним командама INSERT, UPDATE, и DELETE
3.2 1 База података за библиотеку - програм са угнежђеним упитом SELECT из једне табеле - задаци
3.2 2 База података за библиотеку - програм са угнежђеним упитом SELECT - вежбање
3.2 3 База података за библиотеку - програм са угнежђеним упитом - нерешени задаци
3.3 1 База података за возачке дозволе - програм са угнежђеним упитом SELECT - вежбање
3.3 2 База података за возачке дозволе - програм са угнежђеним упитом - нерешени задаци
3.4 1 База података за филмове - програм са угнежђеним упитом SELECT - вежбање
3.4 2 База података за филмове - програм са угнежђеним упитом - нерешени задаци
4 Друга софтверска решења - СУБП Oracle
4.0 1 Oracle Apex и језик PL/SQL
4.0 2 Језик PL/SQL - задаци
4.0 3 Језик PL/SQL - квиз
4.0 4 Језик PL/SQL – нерешени задаци
4.0 5 Наредбе гранања
4.0 6 Наредбе гранања - нерешени задаци
4.0 7 Наредбе циклуса
4.0 8 Наредбе циклуса - нерешени задаци
4.1 1 База података за библиотеку - практичан рад
4.1 2 Наредба SELECT INTO
4.1 3 Наредба SELECT INTO - zadaci
4.1 4 Наредба SELECT INTO - квиз
4.1 5 Наредба SELECT INTO - вежбање
4.1 6 Наредба SELECT INTO - нерешени задаци
4.2 1 Курсори - Узимање података из више редова
4.2 2 Курсори - задаци
4.2 3 Различити начини да се реши проблем
4.2 4 Курсори - нерешени задаци
4.2 5 Курсор са параметром
4.2 6 Курсор са параметром - задаци
4.2 7 Курсор са параметром - нерешени задаци
4.2 8 Курсори - квиз
4.2 9 Курсори и гранање - задаци
4.2 10 Курсори - вежбање
4.2 11 Тренутне позајмице члана - пример
4.2 12 Спискови књига - пример
4.3 1 Процедуре и функције у СУБП-у Oracle Apex
4.3 2 Процедуре и функције - задаци
4.3 3 Процедуре и функције - нерешени задаци
4.3 4 Позајмице једне књиге - пример
4.3 5 Тренутне позајмице - пример
4.3 6 Процедуре и друге SQL команде
4.3 7 Тригери
4.3 8 Списак свих објеката у бази података
4.4 1 Креирање апликације помоћу алата App Builder
4.4 2 Додатне опције App Builder алата
4.4 3 Покретање апликације
4.4 4 Креирање нових страница у апликацији
4.4 5 Покретање раније креиране процедуре
4.4 6 Алат App Builder и XML
4.5 1 База података за салон аутомобила у СУБП-у Oracle Apex - 1. део
4.5 2 База података за салон аутомобила у СУБП-у Oracle Apex - 2. део
4.5 3 База података за салон аутомобила у СУБП-у Oracle Apex - 3. део
4.5 4 База података за продавницу - нерешени пројектни рад

База података за салон аутомобила у СУБП-у Oracle Apex - пројектни рад - 3. део

Пројектни задатак се састоји од три веће целине:

  1. Креирати базу података за салон аутомобила на основу датог модела и података.

  2. Написати PL/SQL програме који су решења датих задатака.

  3. Креирати апликацију помоћу алата App Builder.

Базе података користимо готово увек путем апликација које имају графички кориснички интерфејс и које приступају самој бази.

Трећи део пројекта подразумева да се креира програм употребом алата App Builder.

Приликом рада на било ком делу пројекта, погледајте претходно решене примере и лекције. Након што решите неки задатак па желите да проверите да ли је решење добро или видите да не можете да га решите, можете да погледате решење које ће се приказати након што кликнете на дугме.

Алату App Builder се приступа у оквиру СУБП-а Oracle APEX:

../_images/slika_11_3a.jpg

Креирати апликацију са обрасцима и извештајима за базу података за салон аутомобила помоћу алата App Builder.

Након што се кликне дугме Create, потребно је изабрати опцију New Application.

../_images/slika_11_3b.jpg

Први кораци у креирању апликације су унос назива и избор изгледа саме апликације.

../_images/slika_11_3c.jpg

Изглед апликације подразумева дизајн, тј. тему, и организацију навигације кроз странице апликације. Увек постоји неки подразумевани избор, али он може да се промени. На претходној слици се види да је тема Vita, а организација навигације кроз апликацију је Side Menu. Ово може да се промени кликом на дугме које се налази са десне стране. Постоје неке предложене теме, а могуће је дефинисати и нову кликом на дугме Use Custom Theme.

Назив апликације треба да се унесе у поље Name. Назив је произвољан, али треба да буде добро осмишљен да кратко описује чему апликација служи. У овом примеру ћемо апликацију да назовемо Aplikacija_salon_automobila.

Следећи корак је додавање страница апликацији. Поред почетне странице, додаћемо три странице које ће редом одговарати табелама sa_proizvodjaci, sa_kategorije и sa_modeli.

../_images/slika_11_3d.jpg

Уобичајени називи за странице апликације које приступају табелама у релационој бази података и имају графички кориснички интерфејс су:

  • образац (Form) за унос података;

  • извештај (Report) за приказ података.

Након клика на дугме Add Page, изабрати Interactive Report.

../_images/slika_11_3e.jpg

Појавиће се прозор који можете да видите на следећој слици.

../_images/slika_11_3f.jpg

Пре него што се кликне на дугме Add Page, потребно је урадити следеће:

  1. Унети Tabela_sa_proizvodjaci као назив за извештај Page Name.

  2. Кликнути на дугме десно од поља за избор табеле -Select Table or View- и изабрати табелу sa_proizvodjaci.

  3. Штриклирати опцију Include Form.

../_images/slika_11_3g.jpg

Након што се креира ова страница апликације, поновити поступак за извештај који је у вези са табелом sa_kategorije:

  1. Кликнути на дугме Add Page и изабрати Interactive Report.

  2. Унети Tabela_sa_kategorije као назив за извештај Page Name.

  3. Кликнути на дугме десно од поља за избор табеле -Select Table or View- и изабрати табелу sa_kategorije.

  4. Штриклирати опцију Include Form.

  5. Кликнути на дугме Add Page.

Потребно је креирати још једну страницу која је у вези са табелом sa_modeli:

  1. Кликнути на дугме Add Page и изабрати Interactive Report.

  2. Унети Tabela_sa_modeli као назив за извештај Page Name.

  3. Кликнути на дугме десно од поља за избор табеле -Select Table or View- и изабрати табелу sa_modeli.

  4. Штриклирати опцију Include Form.

  5. Кликнути на дугме Add Page.

Странице ће се појавити на списку свих страница апликације

../_images/slika_11_3h.jpg

Да би се завршио процес креирања апликације, потребно је да се кликне дугме Create Application.

../_images/slika_11_3i.jpg

Након што се креира апликација, добијамо њен комплетан преглед са списком свих страница које су у нашем случају обрасци и извештаји у вези са три табеле.

../_images/slika_11_3j.jpg

Пре него што се покрене апликација, потребно је извршити још неке промене.

Подразумева се да су поља за унос вредности примарног кључа скривена. Постоји механизам да се ове вредности саме попуњавају користећи објекте који се називају секвенце. То је посебно значајно за табеле са великим бројем редова. Секвенце нисмо користили за наш пример базе података за библиотеку, па је потребно да и у апликацији омогућимо да постоје поља за унос идентификационих бројева.

Кликнути на образац за табелу sa_proizvodjaci.

../_images/slika_11_3k.jpg

На списку на левој страни пронаћи и кликнути на скривено поље за унос идентификационог броја P3_PIB.

../_images/slika_11_3l.jpg

У десном делу екрана се појављују опције у вези са овим пољем.

../_images/slika_11_3m.jpg

Променити тип поља тако да не буде скривено већ да буде поље за унос броја Number Field, а затим кликнути на дугме Save.

../_images/slika_11_3n.jpg

Вратити се на комплетан преглед апликације и изменити одговарајућа поља за id_kategorije и id_modela на обрасцима за табеле sa_kategorije и sa_modeli.

Апликација се покреће кликом на дугме Run Application.

../_images/slika_11_3o.jpg

Апликација тражи логовање и за приступ се користе исто корисничко име, тј. имејл адреса, и лозинка као за логовање на онлајн систем Oracle APEX.

../_images/slika_11_3p.jpg

Апликацији можемо да додамо још неке странице. На пример, можемо да додамо страницу са графичким приказом броја модела које имамо у свакој категорији. На овој страници треба да се прикаже резултат следећег упита.

SELECT naziv, COUNT(id_modela)
FROM sa_modeli JOIN sa_kategorije USING (id_kategorije) GROUP BY naziv

Нову страницу додајемо кликом на дугме Create Page. У првом кораку ћемо изабрати Chart, а у наредном, након што кликнемо на дугме Next, изабраћемо Pie.

../_images/slika_11_3q.jpg

Назив странице треба да се унесе у поље Name. У овом примеру ћемо страницу да назовемо Broj_modela_po_kategoriji. Да би могао да се унесе упит, потребно је за Source Type изабрати опцију SQL Query. Упит се уписује у поље Enter a SQL SELECT statement.

../_images/slika_11_3r.jpg

У следећем кораку, пошто се кликне дугме Next, потребно је изабрати назив категорије као Label Column, а број модела као Value Column.

Након што се кликне дугме Create Page, могуће је покренути управо креирану страницу кликом.

../_images/slika_11_3s.jpg

На следећој слици се види новододата страница наше апликације. Страница се аутоматски појавила и у оквиру навигације.

../_images/slika_11_3t.jpg
(Created using Swinx, RunestoneComponents and PetljaDoc)
© 2022 Petlja
A- A+