Базе података 1 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
(infokutija)
 
(Није приказано 18 међуизмена 3 корисника)
Ред 1: Ред 1:
{{Предмет
{{Предмет
| назив    = Базе података 1
| назив    = Базе података 1
| шифра    = 13С112БП1, 13Е113БП1
| шифра    = 13С112БП1, 13Е113БП1, 19Е112БП
| семестар  = 3 (СИ), 5 (РТИ)
| семестар  = 3 (СИ), 5 (РТИ), 4 (ОТ)
| статус    = обавезни
| ЕСПБ      = 6 (СИ, РТИ), 4 (ОТ)
| страница  = [https://rti.etf.bg.ac.rs/rti/bp1/index.html rti.etf.bg.ac.rs/rti/bp1/index.html]
| статус    = обавезни (СИ), обавезни (РТИ), изборни (ОТ)
| одсек    = СИ, РТИ
| страница  = [https://rti.etf.bg.ac.rs/rti/bp1/ rti.etf.rs/rti/bp1]
| одсек    = СИ, РТИ, ОТ
| следећи  = Базе података 2
| следећи  = Базе података 2
}}
}}
'''Базе података 1''' је обавезан предмет у трећем семестру, односно петом семестру за РТИ одсек.
'''Базе података 1''' је обавезан предмет у трећем семестру за СИ, петом семестру за РТИ и четвртом на одсеку за телекомуникације. Питајте Французе.


== Странице ==
== Корисне везе ==
* [https://rti.etf.bg.ac.rs/rti/bp1/ Страница предмета]
* [https://drive.google.com/open?id=1haJaA9fzRFoEn2cmcUc-l-NKenLG_8n5 ETF SI] (старији рокови и лабораторијске вежбе)


== Корисне везе ==
== Настава ==
На вежбама се обрађују следеће теме:
* '''Први блок:''' Модел ентитета и односа
* '''Други блок:''' Нормализација
* '''Трећи блок:''' SQL
 
На предавањима се предаје исто градиво у мало другачијем редоследу, с тим што се пролазе и теоријске основе. Додатне ствари са предавања не долазе на обавезама, али корисно је пратити их уколико желите да се касније бавите базама.


* [https://drive.google.com/open?id=1haJaA9fzRFoEn2cmcUc-l-NKenLG_8n5 ETF SI]
Презентације и са предавања и са вежби су доступне на страници предмета.
* [http://etf.beastweb.org/studije/predmet/baze-podataka-1 ETF Materijali (BeastWeb)] (Старије)


== Лаб вежбе ==
== Лабораторијске вежбе ==
Током семестра организују се две лабораторијске вежбе. На првој лабораторијској вежби се ради повезивање на SQLite базу кроз програмски језик C++ и извршавање једноставних упита над њом, док се на другој лабораторијској вежби раде напреднији упити у [[#Cactus|''Cactus''-u]].
Током семестра организују се две лабораторијске вежбе:
* '''Прва лабораторијска вежба:''' Ради се повезивање на ''SQLite'' базу кроз програмски језик ''Python'' (од школске 2023/2024. године). Када студент дође на прву лабораторијску вежбу, првих сат и по демонстратори показују два задатка сличним онима који ће да дођу на тесту, а онда наредних сат и по студенти раде два задатка из области. Радове са лабораторијске вежбе прегледају демонстратори након што се лабораторијска вежба већ завршила.
* '''Друга лабораторијска вежба:''' Раде се напреднији ''SQL'' упити у ''[[#Cactus|Cactus]]''-у (градиво обично до рекурзивних упита, без рекурзивних упита).
На викију су доступне поставке и решења (нека у програмским језицима ''C++'' и ''Java'' који се више не користе на предмету) лабораторијских вежби од претходних година:
{{#dpl:
{{#dpl:
| titleregexp    = Базе_података_1/Лаб
| titleregexp    = Базе_података_1/Лаб
Ред 27: Ред 36:


== Испитни рокови ==
== Испитни рокови ==
Претходни испитни рокови се могу наћи на страници предмета. Нажалост, нису нарочито погодни за вежбу јер сви имају решења већ означена. Испод можете наћи испитне рокове са странице предмета без означених решења:
Претходни испитни рокови се могу наћи на страници предмета. Нажалост, нису нарочито погодни за вежбу јер сви имају решења већ означена. Испод можете наћи испитне рокове са странице предмета '''без означених решења:'''
{{#dpl:
{{#dpl:
| namespace      = File
| namespace      = File
Ред 35: Ред 44:
}}
}}


== Cactus ==
== Алати ==
''Cactus'' је софтвер који се на лабораторијској вежби и испиту користи као алат за проверавање тачности упита. У тим приликама студентима биће дат cSQL фајл који у себи садржи тест примере који студенту помажу да провери да ли откуцани упит ради оно што се од њега очекује. Пролазак јавног тест примера, додуше, не значи да је цео упит тачан, јер се тестира и на тајним тест примерима.
=== Cactus ===
''Cactus'' је софтвер који се на другој лабораторијској вежби и испиту користи као алат за проверавање тачности упита. У тим приликама студентима биће дат cSQL фајл који у себи садржи тест примере који студенту помажу да провери да ли откуцани упит ради оно што се од њега очекује. Пролазак јавног тест примера, додуше, не значи да је цео упит тачан, јер се тестира и на тајним тест примерима.


''Cactus'' је писан користећи Java 10, и генерално не ради са осталим Java верзијама. Готове архиве са спакованим ''Cactus''-ом заједно са Java 10 су доступне за [https://studentetfbgacrs-my.sharepoint.com/:u:/g/personal/sa190595d_student_etf_bg_ac_rs/EYS6i0XcbWZAv_7fhlqIQA0BCqTM1m_Il409uFGTv1Zi4g Windows] и за [https://studentetfbgacrs-my.sharepoint.com/:u:/g/personal/sa190595d_student_etf_bg_ac_rs/EdzDtvWgB2xEn11Ydap3KWwBTk31IBX_MqFHCIT5QCOxmQ Linux,] (након преузимања отпакујте архиву и покрените <code>pokreni.bat</code> или <code>pokreni.sh</code>) али можете и такође само [https://www.oracle.com/java/technologies/java-archive-javase10-downloads.html преузети JRE 10] (одељак "Java SE Runtime Environment 10.0.2") за ваш оперативни систем и преко њега покренути ''Cactus'' са [https://rti.etf.bg.ac.rs/rti/bp1/materijali/Cactus.jar странице предмета.]
''Cactus'' је писан користећи Java 11, и генерално не ради са старијим Java верзијама. Готове архиве са спакованим ''Cactus''-ом заједно са JRE (верзија из фебруара 2023. године) су доступне за [https://studentetfbgacrs-my.sharepoint.com/:u:/g/personal/sa190595d_student_etf_bg_ac_rs/EbzcLkB1QnNPjRruCEfG3GYBl10MhYSZHr9njD1W1PQ6HQ Windows] и за [https://studentetfbgacrs-my.sharepoint.com/:u:/g/personal/sa190595d_student_etf_bg_ac_rs/Ec1vjcrO9fFCpUTXK64z5W8BhzhC6e6mpKXBleJIOnxiIQ Linux,] (након преузимања распакујте архиву и покрените <code>pokreni.bat</code> или <code>pokreni.sh</code>).


== Начин оцењивања ==
== Начин оцењивања ==
* '''K1''', '''K2''' — Бодови са првог и другог колоквијума максимално 20 за први колоквијум и максимално 10 за други. Могу се поправити у следећем колоквијумском или испитном року.
* <math>K_1</math> — Бодови са првог колоквијума (0-20, могу се поправити у другој колоквијумској недељи)
* '''I''' — Бодови са испита, максимално 50.
* <math>K_2</math> — Бодови са другог колоквијума (0-10, могу се поправити у првом испитном року)
* '''L1''', '''L2''' — Бодови са лабораторијских вежби, прва носи 5 а друга 15 бодова.
* <math>I</math> — Бодови са испита (0-50)
* '''P''' — Коначан број бодова: <math>P = K_1 + K_2 + I + L_1 + L_2</math>.
* <math>L_1</math> — Бодови са прве лабораторијске вежбе (0-5, поправка у прва два рока)
* <math>L_2</math> — Бодови са дриге лабораторијске вежбе (0-15, поправка у прва два рока)
* '''Бодови:''' <math>P = K_1 + K_2 + I + L_1 + L_2</math>.
* '''Услов за полагање:''' <math>I \geq 25</math>.
* '''Услов за полагање:''' <math>I \geq 25</math>.
{| class="wikitable"
{| class="wikitable"
! Бодови
! Бодови
Ред 53: Ред 66:
| 5 || 6 || 7 || 8 || 9 || 10
| 5 || 6 || 7 || 8 || 9 || 10
|}
|}
=== Калкулатор ===
<div class="calculator">
* <math>K_1</math>: <span data-variable="K1" data-max="20"></span>
* <math>K_2</math>: <span data-variable="K2" data-max="10"></span>
* <math>I</math>: <span data-variable="I" data-max="50"></span>
* <math>L_1</math>: <span data-variable="L1" data-max="5"></span>
* <math>L_2</math>: <span data-variable="L2" data-max="15"></span>
* <math>P</math>: <span data-variable="P" data-expression="K1 K2 I L1 L2 + + + +"></span>
* Услов: <span data-variable="U" data-expression="I 24.99 - ceil 0 max 1 min"></span>
* Оцена: <span data-expression="P U * 10 / ceil 5 max 10 min"></span>
</div>


== Потребна помоћ ==
== Потребна помоћ ==
* Поставке других лабораторијских вежби најчешће нису доступне, тако да би студентима значили ти задаци за вежбање за лабораторијску вежбу и испит.
* Поставке других лабораторијских вежби најчешће нису доступне, тако да би студентима значили ти задаци за вежбање за лабораторијску вежбу и испит.
* Лабораторијским вежбама са SQL генерално недостају решења, на пример за [[Базе података 1/Лаб 2 семестрални 2020|Лаб 2 семестрални 2020]].
* Почев од 2023/2024. године променио се програмски језик на лабораторијским вежбама, тако да су на постојећим лабораторијским вежбама неопходна решења у ''Python''

Тренутна верзија на датум 11. новембар 2023. у 20:39

Базе података 1 је обавезан предмет у трећем семестру за СИ, петом семестру за РТИ и четвртом на одсеку за телекомуникације. Питајте Французе.

Корисне везе

  • ETF SI (старији рокови и лабораторијске вежбе)

Настава

На вежбама се обрађују следеће теме:

  • Први блок: Модел ентитета и односа
  • Други блок: Нормализација
  • Трећи блок: SQL

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

Презентације и са предавања и са вежби су доступне на страници предмета.

Лабораторијске вежбе

Током семестра организују се две лабораторијске вежбе:

  • Прва лабораторијска вежба: Ради се повезивање на SQLite базу кроз програмски језик Python (од школске 2023/2024. године). Када студент дође на прву лабораторијску вежбу, првих сат и по демонстратори показују два задатка сличним онима који ће да дођу на тесту, а онда наредних сат и по студенти раде два задатка из области. Радове са лабораторијске вежбе прегледају демонстратори након што се лабораторијска вежба већ завршила.
  • Друга лабораторијска вежба: Раде се напреднији SQL упити у Cactus-у (градиво обично до рекурзивних упита, без рекурзивних упита).

На викију су доступне поставке и решења (нека у програмским језицима C++ и Java који се више не користе на предмету) лабораторијских вежби од претходних година:

Испитни рокови

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

Алати

Cactus

Cactus је софтвер који се на другој лабораторијској вежби и испиту користи као алат за проверавање тачности упита. У тим приликама студентима биће дат cSQL фајл који у себи садржи тест примере који студенту помажу да провери да ли откуцани упит ради оно што се од њега очекује. Пролазак јавног тест примера, додуше, не значи да је цео упит тачан, јер се тестира и на тајним тест примерима.

Cactus је писан користећи Java 11, и генерално не ради са старијим Java верзијама. Готове архиве са спакованим Cactus-ом заједно са JRE (верзија из фебруара 2023. године) су доступне за Windows и за Linux, (након преузимања распакујте архиву и покрените pokreni.bat или pokreni.sh).

Начин оцењивања

  • — Бодови са првог колоквијума (0-20, могу се поправити у другој колоквијумској недељи)
  • — Бодови са другог колоквијума (0-10, могу се поправити у првом испитном року)
  • — Бодови са испита (0-50)
  • — Бодови са прве лабораторијске вежбе (0-5, поправка у прва два рока)
  • — Бодови са дриге лабораторијске вежбе (0-15, поправка у прва два рока)
  • Бодови: .
  • Услов за полагање: .
Бодови
Оцена 5 6 7 8 9 10

Калкулатор

  • :
  • :
  • :
  • :
  • :
  • :
  • Услов:
  • Оцена:

Потребна помоћ

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