diff --git a/08/Readme.md b/08/Readme.md index 117aac2..2e97234 100644 --- a/08/Readme.md +++ b/08/Readme.md @@ -1,4 +1,4 @@ -# Домашнее задание к занятию "Работа с БД" +# Домашнее задание к занятию «Работа с БД» ### Цель задания @@ -11,16 +11,17 @@ 1. Скачать проект с прекодом 08_PreDataBase. 2. Добавить в CmakeList.txt модуль для работы с БД. 3. Подключить в CmakeList.txt библиотеки из папки PG_Libs к проекту. -4. Заменить на главной форме виджет QTableWidget, на необходимый для выполнения задания. +4. Заменить на главной форме виджет QTableWidget на необходимый для выполнения задания. 5. Изменить существующие или добавить новые методы, необходимые для выполнения задания. 6. Допускается добавить данные для подключения в конструктор DbData. -##### Обратить внимание. -В объект QSqlTableModel необходимо передавать только активное соединение с БД, т.е. после вызова метода open(). +##### Обратите внимание -"///Тут должен быть код ДЗ" данные комментарии носят рекомендательный характер. При необходимости методы можно модифицировать или добавлять новые. +В объект QSqlTableModel необходимо передавать только активное соединение с БД, т. е. после вызова метода open(). -В случае если вы подключаете динамические библиотеки, выбираете драйвер "QPSQL", но появляется ошибка "Driver not loaded", необходимо установить PostgreSQL (https://www.postgresql.org/download/) и прописать в системные пути пути к папкам PostgreSQL\15\bin и PostgreSQL\15\lib. +«///Здесь должен быть код ДЗ» эти комментарии носят рекомендательный характер. При необходимости методы можно модифицировать или добавлять новые. + +Если вы подключаете динамические библиотеки, выбираете драйвер QPSQL, но появляется ошибка Driver not loaded, необходимо установить [PostgreSQL](https://www.postgresql.org/download/) и прописать в системные пути пути к папкам PostgreSQL\15\bin и PostgreSQL\15\lib. ##### Данные для подключения к БД @@ -32,25 +33,25 @@ ##### Описание таблицы БД -Для выполнения работы необходимо получить данные из таблицы под названием "film", которая состояит из 14 столбцов: +Для выполнения работы необходимо получить данные из таблицы под названием film, которая состояит из 14 столбцов. -1. film_id - ИД записи; -2. title - название фильма; -3. description - описание фильма; -4. release_year - год выпуска; -5. language_id - язык фильма, внешний ключ(ВК) -6. original_language_id - оригинальный язык фильма, ВК -7. rental_duration - доступная продолжительность аренды фильма, дней; -8. rental_rate - цена в $ за день; -9. length - продолжительность фильма, мин; -10. replacement_cost - цена замены фильма; -11. rating - возрастной рейтинг фильма; -12. last_update - служебная информация, последнее одновление записи; -13. special_features - дополнительные особенности фильма; -14. fulltext - ключевые слова для поиска фильма. +1. film_id — ИД записи. +2. title — название фильма. +3. description — описание фильма. +4. release_year — год выпуска. +5. language_id — язык фильма, внешний ключ (ВК). +6. original_language_id — оригинальный язык фильма, ВК. +7. rental_duration — доступная продолжительность аренды фильма, дней. +8. rental_rate — цена в $ за день. +9. length — продолжительность фильма, мин. +10. replacement_cost — цена замены фильма. +11. rating — возрастной рейтинг фильма. +12. last_update — служебная информация, последнее одновление записи. +13. special_features — дополнительные особенности фильма. +14. fulltext — ключевые слова для поиска фильма. -Для получения категорий фильмов можн опользоваться запросом +Для получения категорий фильмов можно пользоваться запросом: SELECT title, description FROM film f JOIN film_category fc on f.film_id = fc.film_id @@ -59,28 +60,28 @@ WHERE c.name = 'Comedy' ('Horror') ------ -### Задание 1. +### Задание 1 -1. Реализовать получение всех фильмов(в фильтре на главной форме выбрано значение "все" ) из БД при помощи объекта класса QSqlTableModel. +1. Реализовать получение всех фильмов (в фильтре на главной форме выбрано значение «все») из БД при помощи объекта класса QSqlTableModel. 2. Необходимо реализовать получение комедий и ужасов из БД при помощи объекта класса QSqlQueryModel. 3. В таблице на главной форме должны отображаться: - * Столбцы "Название фильма" и "Описание фильма". - * Присутствовать заголовки столбцов. -4. При нажатии на кнопку "Очистить" таблица должна очищаться. + * столбцы «Название фильма» и «Описание фильма», + * заголовки столбцов. +4. При нажатии на кнопку «Очистить» таблица должна очищаться. ------ -### Правила приема работы +### Правила приёма работы -1. Отправлена ссылка на репозиторий с кодом ДЗ +1. Отправлена ссылка на репозиторий с кодом ДЗ. ------ -### Критерий зачета +### Критерии зачёта: -* Реализованы механизмы получения фильмов при помощи объектов класса QSqlTableModel и QSqlQueryModel. -* Программа работает стабильно. -* Выполняются все требования из задания. +* реализованы механизмы получения фильмов при помощи объектов класса QSqlTableModel и QSqlQueryModel, +* программа работает стабильно, +* выполняются все требования из задания.