Файл: 1. Обоснование концептуальной модели базы данных 4 Выполнение нормализации базы данных 9.docx
Добавлен: 05.12.2023
Просмотров: 127
Скачиваний: 2
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Таблица История платежей находится в 3НФ и имеет один потенциальный ключ (Код платежа), (4ФЗ), следовательно, таблица приведена к НФБК.Таблица Заявление на ИП находится в 3НФ и имеет один потенциальный ключ (Код заявления), (5ФЗ), следовательно, таблица приведена к НФБК.Таблица Деятельность находится в 3НФ и имеет один потенциальный ключ (Код ОКВЭД), (6ФЗ), следовательно, таблица приведена к НФБК.Таблица Виды деятельности находится в 3НФ и имеет один потенциальный ключ (Код вида деятельности), (7ФЗ), следовательно, таблица приведена к НФБК. 3. Конструирование таблиц базы данных и заполнение полей Информация внутри базы данных должна соответствовать, заданным правилам, логике и структуре. База данных должна содержать полную и непротиворечивую информацию. Целостность данных подразделяется на три категории: доменная, категорная и ссылочная.Рассмотрим целостность этих категорий для нашей базы данных в Таблице 3. «Целостность данных».Таблица 3 «Целостность данных»Доменный тип целостности
Категорный тип целостности
Ссылочный тип целостности
4. Оформление схемы данных После выполнения всех необходимых требований, получаем реляционную схему данных. Реляционная схема была реализована в СУБД Microsoft Access. Схема приведена на рисунке 2. «Реляционная схема данных». Рисунок 2. «Реляционная схема данных»5. Конструирование запросов к базе данных Конструирование запросов к базе данных - это процесс создания запросов, которые позволяют получать необходимую информацию из базы данных. Для решения задач, описанных в данной курсовой работе, требуется написать запросы на языке SQL (Structured Query Language), который является стандартным языком для работы с реляционными базами данных. При конструировании запросов к базе данных следует учитывать следующие факторы:
Запрос: SELECT * FROM Налогоплательщики WHERE Вид_налога='название_налога'; Для запроса списка налогоплательщиков, не перечисливших деньги к заданной дате, нужно использовать SQL-запрос с использованием операторов SELECT, WHERE и JOIN. Запрос: SELECT * FROM Ведомость_платежей WHERE (Сумма_платежа-Сумма_начисленных_платежей)>0 AND Вид_налога='название_налога'; Для запросов на отчеты «Список должников» и «Поиск платежей по ИНН» нужно использовать SQL-запросы с использованием операторов SELECT, WHERE и JOIN с учетом параметров, заданных пользователем в форме. Запрос: SELECT Налогоплательщики.ФИО, Налогоплательщики.ИНН, Налогоплательщики.Адрес, SUM(ВедомостьПлатежей.Сумма) AS [Сумма долга] FROM Налогоплательщики INNER JOIN ВедомостьПлатежей ON Налогоплательщики.ИНН = ВедомостьПлатежей.ИНН GROUP BY Налогоплательщики.ФИО, Налогоплательщики.ИНН, Налогоплательщики.Адрес HAVING SUM(ВедомостьПлатежей.Сумма) > 0 Этот запрос выводит список должников с ФИО, ИНН и адресом, а также суммой долга по каждому налогоплательщику.Запрос: SELECT Налогоплательщики.ФИО, ВедомостьПлатежей.ИНН, ВедомостьПлатежей.Дата, ВидыНалогов.Наименование, ВедомостьПлатежей.Сумма FROM (ВидыНалогов INNER JOIN ВедомостьПлатежей ON ВидыНалогов.ID_вида_налога = ВедомостьПлатежей.ID_вида_налога) INNER JOIN Налогоплательщики ON ВедомостьПлатежей.ИНН = Налогоплательщики.ИНН WHERE ВедомостьПлатежей.ИНН=[Введите ИНН налогоплательщика]; Этот запрос выводит список платежей по заданному ИНН налогоплательщика с указанием ФИО, даты платежа, наименования налога и суммы. При выполнении запроса будет запрошен ИНН налогоплательщика, по которому будет осуществляться поиск платежей. Для запроса списка налогоплательщиков, перейдя на форму «Налогоплательщики», нужно использовать запрос на выборку из соответствующей таблицы в базе данных. Запрос: SELECT * FROM Налогоплательщики WHERE ИНН NOT IN (SELECT ИНН_налогоплательщика FROM Ведомость_платежей WHERE Дата_платежа<'заданная_дата'); Для запросов на переход на формы «Ведомость платежей», «Справочник налогов», «Справочник ОКВЭД», «Субъекты РФ» и «Подать заявку на ИП» нужно использовать запросы на выборку из соответствующих таблиц в базе данных. Запрос на выборку всех записей из таблицы "Ведомость платежей": SELECT * FROM Ведомость_платежей; Запрос на выборку всех записей из таблицы "Справочник налогов": SELECT * FROM Справочник_налогов; Запрос на выборку всех записей из таблицы "Справочник ОКВЭД": SELECT * FROM Справочник_ОКВЭД;
Запрос на выборку всех записей из таблицы "Субъекты РФ": SELECT * FROM Субъекты_РФ; Запрос на выборку всех записей из таблицы "Заявки на ИП": SELECT * FROM Заявки_на_ИП; В целом, для составления запросов в Access нужно учитывать структуру базы данных, таблиц и связей между ними, а также параметры, заданные пользователем в форме. 6. Разработка форм базы данных Продолжая работу над курсовой работой, следующим шагом будет разработка форм базы данных для взаимодействия с базой данных. Формы будут использоваться для ввода, редактирования и просмотра данных.Каждая форма должна иметь соответствующие поля для ввода информации. Поля должны быть связаны с соответствующими таблицами базы данных и иметь соответствующие свойства. Также необходимо добавить кнопки для сохранения, отмены и удаления данных.Кроме того, для удобства работы с базой данных можно создать отдельную форму для каждого из запросов, описанных в предыдущем пункте. Формы запросов должны содержать поля для ввода параметров запроса и кнопку для выполнения запроса. Результат выполнения запроса должен выводиться в соответствующей форме.Все формы должны быть разработаны в соответствии с требованиями к пользовательскому интерфейсу и обеспечивать удобство работы с базой данных.Рисунок №4. «Главное меню приложения»Рисунок №5. «Меню сотрудника» 7. Разработка отчета Разработка отчета является важным этапом при работе с базами данных, так как позволяет представить полученные данные в удобном виде для анализа и принятия решений. Отчеты могут содержать различные данные, такие как сводные таблицы, графики, диаграммы и другие элементы визуализации.Для разработки отчета необходимо определить цель и задачи отчета, выбрать данные, которые будут использоваться, определить формат и вид представления данных. Необходимо также учитывать потребности пользователей, их уровень знаний и опыт работы с базами данных.Для создания отчетов можно использовать различные инструменты, такие как генераторы отчетов, инструменты бизнес-аналитики и инструменты визуализации данных. Наиболее распространенными являются Microsoft Excel, Microsoft Access, Power BI, Tableau и другие.Важно также учитывать, что отчеты должны быть понятными, легко читаемыми и содержать только необходимые данные. Они должны быть удобны для использования и обеспечивать возможность быстрого анализа данных.
| Атрибут | Тип | Домен | Обеспечение целостности |
| Наименование налога | Текстовый | <=50 символов | обязательно |
| Ставка в % | Числовой | Целое | обязательно |
| Облагаемая сумма | Денежный | | обязательно |
| Дата получения извещения | Дата/время | Краткий формат даты | обязательно |
| Дата платежа | Дата/время | Краткий формат даты | обязательно |
| Название субъекта | Текстовый | <=50 символов | обязательно |
| Фамилия | Текстовый | <=40 символов | обязательно |
| Имя | Текстовый | <=30 символов | обязательно |
| Отчество | Текстовый | <=40 символов | обязательно |
| Дата рождения | Дата/время | Краткий формат даты | обязательно |
| Адрес | Текстовый | <=50 символов | обязательно |
| Дом | Числовой | Целое | обязательно |
| Квартира | Числовой | Целое | обязательно |
| Серия паспорта | Числовой | Целое | обязательно |
| Номер паспорта | Числовой | Длинное целое | обязательно |
| Дата выдачи паспорта | Дата/время | Краткий формат даты | обязательно |
| Телефон | Текстовый | <=15 символов | обязательно |
| Дата заполнения заявления | Дата/время | Краткий формат даты | обязательно |
| Деятельность | Текстовый | <=50 символов | обязательно |
| Вид деятельности | Текстовый | <=50 символов | обязательно |
Категорный тип целостности
| Атрибут | Ограничения | Тип | Домен |
| Код налога (Справочник налогов) | индексированный обязательно | Счетчик | >=1 |
| Код платежа (История платежей) | индексированный обязательно | Счетчик | >=1 |
| Код тура (Туры) | индексированный обязательно | Числовой | Целое |
| Налогоплательщики (ИНН физ лица) | индексированный обязательно | Текстовый | 12 |
| Субъекты РФ (Код субъекта) | индексированный обязательно | Числовой | Целое |
| Заявления на регистрацию ИП (Код заявления) | индексированный обязательно | Счетчик | >=1 |
| Деятельность (Код ОКВЭД) | индексированный обязательно | Текстовый | 10 |
| Виды деятельности (Код вида деятельности) | индексированный обязательно | Числовой | Целое |
| Атрибут | Ограничения | Тип | Домен |
| Вид налога (История платежей) | индексированный обязательно | числовой | >=1 |
| ИНН плательщика (История платежей) | индексированный обязательно | Текстовый | 12 |
| Субъект РФ (Налогоплательщики) | индексированный обязательно | числовой | >=1 |
| ИНН физ лица (Заявление на ИП) | индексированный обязательно | Текстовый | 12 |
| Код ОКВЭД (Заявление на ИП) | индексированный обязательно | Текстовый | 10 |
| Вид деятельности (Деятельность) | индексированный обязательно | числовой | >=1 |
4. Оформление схемы данных После выполнения всех необходимых требований, получаем реляционную схему данных. Реляционная схема была реализована в СУБД Microsoft Access. Схема приведена на рисунке 2. «Реляционная схема данных». Рисунок 2. «Реляционная схема данных»5. Конструирование запросов к базе данных Конструирование запросов к базе данных - это процесс создания запросов, которые позволяют получать необходимую информацию из базы данных. Для решения задач, описанных в данной курсовой работе, требуется написать запросы на языке SQL (Structured Query Language), который является стандартным языком для работы с реляционными базами данных. При конструировании запросов к базе данных следует учитывать следующие факторы:
-
Выбор таблицы: для получения необходимой информации нужно определить таблицу, в которой она хранится. -
Выбор полей: необходимо определить, какие поля из таблицы нужно выбрать. -
Условия выборки: для получения нужной информации следует задать условия, которым должны соответствовать записи в таблице. -
Агрегирующие функции: для получения сумм, количества или других агрегированных данных следует использовать соответствующие функции. -
Сортировка: можно задать порядок сортировки результатов запроса по определенному полю. -
Группировка: можно сгруппировать результаты запроса по определенному полю. -
Объединение таблиц: в случае, когда необходимо объединить информацию из нескольких таблиц, можно использовать оператор JOIN.
Запрос: SELECT * FROM Налогоплательщики WHERE Вид_налога='название_налога'; Для запроса списка налогоплательщиков, не перечисливших деньги к заданной дате, нужно использовать SQL-запрос с использованием операторов SELECT, WHERE и JOIN. Запрос: SELECT * FROM Ведомость_платежей WHERE (Сумма_платежа-Сумма_начисленных_платежей)>0 AND Вид_налога='название_налога'; Для запросов на отчеты «Список должников» и «Поиск платежей по ИНН» нужно использовать SQL-запросы с использованием операторов SELECT, WHERE и JOIN с учетом параметров, заданных пользователем в форме. Запрос: SELECT Налогоплательщики.ФИО, Налогоплательщики.ИНН, Налогоплательщики.Адрес, SUM(ВедомостьПлатежей.Сумма) AS [Сумма долга] FROM Налогоплательщики INNER JOIN ВедомостьПлатежей ON Налогоплательщики.ИНН = ВедомостьПлатежей.ИНН GROUP BY Налогоплательщики.ФИО, Налогоплательщики.ИНН, Налогоплательщики.Адрес HAVING SUM(ВедомостьПлатежей.Сумма) > 0 Этот запрос выводит список должников с ФИО, ИНН и адресом, а также суммой долга по каждому налогоплательщику.Запрос: SELECT Налогоплательщики.ФИО, ВедомостьПлатежей.ИНН, ВедомостьПлатежей.Дата, ВидыНалогов.Наименование, ВедомостьПлатежей.Сумма FROM (ВидыНалогов INNER JOIN ВедомостьПлатежей ON ВидыНалогов.ID_вида_налога = ВедомостьПлатежей.ID_вида_налога) INNER JOIN Налогоплательщики ON ВедомостьПлатежей.ИНН = Налогоплательщики.ИНН WHERE ВедомостьПлатежей.ИНН=[Введите ИНН налогоплательщика]; Этот запрос выводит список платежей по заданному ИНН налогоплательщика с указанием ФИО, даты платежа, наименования налога и суммы. При выполнении запроса будет запрошен ИНН налогоплательщика, по которому будет осуществляться поиск платежей. Для запроса списка налогоплательщиков, перейдя на форму «Налогоплательщики», нужно использовать запрос на выборку из соответствующей таблицы в базе данных. Запрос: SELECT * FROM Налогоплательщики WHERE ИНН NOT IN (SELECT ИНН_налогоплательщика FROM Ведомость_платежей WHERE Дата_платежа<'заданная_дата'); Для запросов на переход на формы «Ведомость платежей», «Справочник налогов», «Справочник ОКВЭД», «Субъекты РФ» и «Подать заявку на ИП» нужно использовать запросы на выборку из соответствующих таблиц в базе данных. Запрос на выборку всех записей из таблицы "Ведомость платежей": SELECT * FROM Ведомость_платежей; Запрос на выборку всех записей из таблицы "Справочник налогов": SELECT * FROM Справочник_налогов; Запрос на выборку всех записей из таблицы "Справочник ОКВЭД": SELECT * FROM Справочник_ОКВЭД;
Запрос на выборку всех записей из таблицы "Субъекты РФ": SELECT * FROM Субъекты_РФ; Запрос на выборку всех записей из таблицы "Заявки на ИП": SELECT * FROM Заявки_на_ИП; В целом, для составления запросов в Access нужно учитывать структуру базы данных, таблиц и связей между ними, а также параметры, заданные пользователем в форме. 6. Разработка форм базы данных Продолжая работу над курсовой работой, следующим шагом будет разработка форм базы данных для взаимодействия с базой данных. Формы будут использоваться для ввода, редактирования и просмотра данных.Каждая форма должна иметь соответствующие поля для ввода информации. Поля должны быть связаны с соответствующими таблицами базы данных и иметь соответствующие свойства. Также необходимо добавить кнопки для сохранения, отмены и удаления данных.Кроме того, для удобства работы с базой данных можно создать отдельную форму для каждого из запросов, описанных в предыдущем пункте. Формы запросов должны содержать поля для ввода параметров запроса и кнопку для выполнения запроса. Результат выполнения запроса должен выводиться в соответствующей форме.Все формы должны быть разработаны в соответствии с требованиями к пользовательскому интерфейсу и обеспечивать удобство работы с базой данных.Рисунок №4. «Главное меню приложения»Рисунок №5. «Меню сотрудника» 7. Разработка отчета Разработка отчета является важным этапом при работе с базами данных, так как позволяет представить полученные данные в удобном виде для анализа и принятия решений. Отчеты могут содержать различные данные, такие как сводные таблицы, графики, диаграммы и другие элементы визуализации.Для разработки отчета необходимо определить цель и задачи отчета, выбрать данные, которые будут использоваться, определить формат и вид представления данных. Необходимо также учитывать потребности пользователей, их уровень знаний и опыт работы с базами данных.Для создания отчетов можно использовать различные инструменты, такие как генераторы отчетов, инструменты бизнес-аналитики и инструменты визуализации данных. Наиболее распространенными являются Microsoft Excel, Microsoft Access, Power BI, Tableau и другие.Важно также учитывать, что отчеты должны быть понятными, легко читаемыми и содержать только необходимые данные. Они должны быть удобны для использования и обеспечивать возможность быстрого анализа данных.