Курс “Бази данни” – професия “Приложен програмист”

Курсът “Бази данни” се изучава в професиите “Програмист“, “Приложен програмист” и “Системен програмист” съгласно държавните общообразователни изисквания. Настоящата учебна програма е приложима както за професионалните гимназии, така и за други учебни заведения.

Разпределение

  • 72 учебни часа (18 седмици по 4 часа)
  • 11 клас, първи учебен срок

Учебна програма

Настоящата учебна програма по “Бази данни” е разработена от експертната група към МОН по проект “Професия приложен програмист”.

Наименование на разделите
Минимален брой часове
1.

Въведение в базите данни

  • Предназначение на базите от данни, създаване на бази от данни. Практическо въведение с примери: бази, таблици, записи, колони, типове данни, работа с визуални инструменти за управление на бази от данни
  • DDL: създаване на таблици и типове данни (CREATE, DROP и ALTER)
  • Упражнения: създаване на бази от данни с таблици без връзки между тях (потребители, градове, оценки на ученици от предмети)
  • Прости SELECT заявки върху създадените таблици
8
2.

Моделиране на релационни бази от данни

  • Релационнен модел и типове връзки (one-to-many, many-to-many)
  • Ограничения, identity / autoincrement колони, ключове (primary / unique / foreign key, composite key, check, not null, default)
  • Нормализация (първа, втора и трета нормална форма)
  • Упражнения: създаване на сложни бази от данни с таблици с връзки между тях, например:
    • Телефонен указател – потребители, контакти, телефони
    • Фирма – потребители, потребителски групи, задачи, отчетени часове
8
3.

Заявки за извличане и промяна на данни

  • Извличане на данни, филтри по колони, филтри по редове, концепция за result sets и как се строи result set при изпълнение на SELECT команда (SQL команди SELECT, WHERE, логически оператори AND / OR)
  • Упражнения: извличане на данни от готови бази – телефонен указател, фирма
  • DML: манипулация на данни с INSERT, UPDATE и DELETE
  • Упражнения: въвеждане / промяна / изтриване на данни – телефонен указател, фирма
8
4.

Сложни заявки за извличане на данни

  • Вложени SQL заявки, псевдоними и оператори за множества (ALL, ANY, EXISTS, IN)
  • Упражнения върху вложени SQL заявки
  • Сортиране на резултати, странициращи заявки, заявка към result sets (ORDER BY, LIMIT)
  • Упражнения: извличане на данни за групи от потребители – задачи дадени на потребители от конкретна група (заявки през няколко таблици)
8
5.

Съединения на таблици (SQL JOIN)

  • Декартово произведение на таблици и съединения с WHERE
  • Упражнения: извличане на данни от няколко таблици
  • Заявки с JOIN клауза (INNER, LEFT, RIGHT, FULL, CROSS)
  • Упражнения: заявки с JOIN клаузи, търсене на дублиращи се записи в таблица
8
6.

Агрегация и групиране на данни

  • Агрегиращи функции (AVG, MIN, MAX, SUM, COUNT)
  • Упражнения за агрегиращи функции
  • Групиране на данни и филтър в групите (GROUP BY, HAVING)
  • Упражнения върху групиране:
    • Заявки с разбивка по периоди, извличане на хората работили под определени часове на седмица, извличане на средния брой отчетени часове, извличане на средния брой поети задачи по служител и по група
    • Бонус: условни конструкции в заявки и създаване на PIVOT result sets (CASE)
8
7.

Скаларни функции, работа с дати, транзакции

  • Скаларни функции и работа с дати (CAST, ISNULL, DATEPART, DAY, MONTH, YEAR, GETDATE, DATEADD)
  • Упражнения: разбивка на дата в няколко колони (месец, година, ден), изчисляване на броя дни до дата
  • Упражнения: работа с функции и дати
  • Транзакции и нива на изолация
8
8.

Подготовка за практически изпит

  • Създаване на таблици, модификация на колони, въвеждане на записи, промяна на съществуващи записи
  • Извличане на данни с прости заявки
  • Извличане на данни със съединения на таблици
  • Групиращи заявки, агрегатни и скаларни функции
4
9.

Практически изпит

  • Практически изпит по СУБД – създаване на таблици, въвеждане, модификация и изтриване на данни, извличане на данни
4
Общ минимален брой часове 64
Резерв часове 8
Общ брой часове 72

Свободно учебно съдържание

Всички учители, преподаватели и ентусиасти могат да изтеглят свободно учебно съдържание за курса “Бази данни”, което включва:

  • Презентации за всяка тема с високо качество
  • Добре разписани задания за упражнения за всяка тема
  • Примерни задачи за изпит

Курсът е част от свободното учебно съдържание на СофтУни фондацията за професия “Приложен програмист”.