Разработка приложения базы данных на тему "Приемная комиссия"
Разработка даталогической модели базы данных. Нормализация таблиц, определение ограничения целостности. Установление связи между таблицами. SQL–запросы, создание пользовательского интерфейса, описание алгоритмов. Составление инструкции пользователю.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 20.09.2016 |
Размер файла | 596,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Департамент ОБРАЗОВАНИЯ и МОЛОДЕЖНОЙ
ПОЛИТИКИ НОВГОРОДСКОЙ ОБЛАСТИ
ОГА ПОУ Боровичский техникум строительной индустрии и экономики
Специальность: 09.02.03 Программирование в компьютерных системах
КУРСОВОЙ ПРОЕКТ
По МДК.02.02.Технология разработки и защиты баз данных
Тема: Разработка приложения базы данных на тему «Приемная комиссия»
Выполнил студент: Группы П-31
Воронин В.М.
Руководитель проекта:
Преподаватель Винокурова Е.В.
Боровичи 2016
Содержание
интерфейс запрос пользователь
Введение
1. Обоснование и разработка инфологической модели
2. Обоснование выбора СУБД и программного обеспечения
3. Разработка даталогической модели базы данных
3.1 Определение базовых таблиц
3.2 Выполнение нормализации таблиц
3.3 Определение ограничения целостности
3.4 Установление связи между таблицами
4. SQL - запросы
5. Физическое проектирование
5.1 Создание пользовательского интерфейса
5.2 Описание алгоритмов
5.3 Составление инструкции пользователю
6. Отчеты
Заключение
Список использованной литературы
Приложения
Аннотация
Курсовой проект включает в себя разработку приложения базы данных на тему «Приемная комиссия» в среде разработки VisualStudioC#.
Обоснование и разработка инфологической модели.
Обоснование выбора СУБД и програмного обеспечения.
В разработка датологической модели базы данных рассмотрены вопросы: Определение базових таблиц; выполнение нормализации таблиц; определение ограничения целостности, установление связи между таблицами.
SQL - запросы.
Физическое проектирование включает в себя:Создание пользовательского интерфейса, Описание алгоритмов, Технология разработка програмного продукта, Результаты работы програмного продукта и их оценка, Составление инструкции пользователю.
На прилагаемом диске находится исходный код программы, исполняемый модуль и презентация.
ВВЕДЕНИЕ
В начале 1970-х годов в одной из исследовательских лабораторий компании IBM была разработана експериментальная реляционная СУБД IBM System R, для которой затем был создан специальный язык SEQUEL, позволяв ший относительно просто управлять данными в этой СУБД.
Поскольку к началу 1980-х годов существовало несколько вариантов СУБД от разных производителей, причём каждый из них обладал собственной реализацией язика запросов, было принято решение разработать стандарт языка, который будет гарантировать переносимость ПО с одной СУБД на другую (при условии, что они будут поддерживать этот стандарт).
По традиции, как и со многими стандартами в IT-индустрии, с языком SQL возникла проблема: на каком-то этапе многие производители использующего SQL програмного обеспечения решили, что функциональность в текущей (на тот момент времени) версти стандарт а недостаточна, и её желательно расширить. В результате у разных производителей систем управления базами данных (СУБД) в ходу разные диалекты SQL, в об щем случае между собой несовместимые.
Несмотря на наличие диалектов и различий в синтаксисе, в большинстве своїм тексты SQL-запросов, содержащие DDL и DML, когут бать достаточно легко перенесены из одной СУБД в другую.
Объектом данного курсовогопроекта является приложение работающие с базой данных«Приемная комиссия».
Целью данного курсового проекта ставится получение практических навыков разработка программ в бреде візуального программирования VisualStudio 2010 C# путем разработка приложения «Приемная комиссия».
Задачи курсового проекта:
- Выполнить обоснование и разработать инфологическую модель
- Разработать даталогическую модель базы данных
- Определить базовые таблицы
- Выполнить нормализацию таблиц
- Определить ограничения целостности
- Установить связи между таблицами
- Разработать SQL - запросы
- Спроектировать отчеты
- Создать пользовательский интерфейс
- Разработать программный продукт
- Выполнить описание алгоритмов
- Составить инструкцию пользователю
Разработанное приложение будет использоваться администрацией приемной комиссии.
1. Обоснование и разработка инфологической модели
Область применения базы данных является деятельность спортивного клуба. Такая система обеспечивает хранение сведений о клиентах, об абонементах, о наименовании залов, информации о тренерах, об учете.
Программа является очень актуальной на сегодняшний день, она автоматизирует работу с базой данных и предоставляет пользователю (секретарю) понятный и дружественный интерфейс.
Программная система, предназначенная для Деятельности учебных заведений
Набор сущностей.
Абитуриент, Расписание, Регистрация, Факультет, Поток, Группы, Кафедра, Паспортные данные.
1) Сущность «Абитуриент» необходима для хранения и просмотра данных об поступающих абитуриентах.
2) Сущность «Расписание» необходима для хранения и просмотра данных о экзаменах и консультаций абитуриентов.
3) Сущность «Регистрация» необходима для хранения и просмотра данных о группах и потоках.
4) Сущность «Факультет» необходима для хранения и просмотра данных о факультете.
5) Сущность «Поток» необходима для хранения и просмотра данных о потоке.
6) Сущность «Группы» необходима для хранения и просмотра данных о группе.
7) Сущность «Кафедра» необходима для хранения и просмотра данных о кафедре.
8) Сущность «Паспортные данные» необходима для хранения и просмотра данных о паспорте абитуриента.
Атрибуты:
Абитуриент. Атрибуты: IDАбитуриента, Фамилия, Имя, Отчество, Паспортные данные, Учебное заведение, Год окончания, Наличие золотой медали, Номер аттестата, Оценка за экзамен.
Расписание. Атрибуты: IDПредмет, Номер абитуриента, Название предмета, Номер потока, Занятия, Дата.
Регистрация. Атрибуты: IDРегистрация, IDАбитуриента Номер группы, Номер потока, Название кафедры, Название факультета.
Факультет. Атрибуты: IDФакультета, Название факультета.
Поток. Атрибуты: IDПотока, Количество групп.
Группы. Атрибуты: IDГруппы, Название группы.
Кафедра. Атрибуты: IDКафедра, Название кафедры.
Паспортные данные. Атрибуты: IDПаспорта, Кем выдан, Когда выдан, Номер, Серия.
Рисунок 1 ER-диаграмма
2. Обоснование выбора СУБД и программного обеспечения
База данных (БД) - это совокупность специальным образом организованных данных хранимых в памяти вычислительной системы отображающих состояние объектов и их взаимосвязи в рассматриваемой предметной области.
Предметной областью называется часть реальной системы, представляющая интерес для определенного исследования. Различать полную предметную область (предприятие) и организационную единицу этой предметной области (отделы).
Основные термины.
Объект - термин, обозначающий факт, лицо, событие, предмет, о котором могут быть собраны данные (каждая таблица представляет один объект);
Реляционная БД - основной тип современных баз данных. Состоит из таблиц, между которыми могут существовать связи по ключевым значениям.
Таблица базы данных (table) - регулярная структура, которая состоит из однотипных строк (записей, records), разбитых на столбцы (поля, fields).
В теории реляционных баз данных синоним таблицы - отношение (relation), в котором строка называется кортежем, а столбец называется атрибутом.
В концептуальной модели реляционной БД аналогом таблицы является сущность (entity), с определенным набором свойств - атрибутов, способных принимать определенные значения (набор допустимых значений - домен).
Ключевой элемент таблицы (ключ, regularkey) - такое ее поле (простой ключ) или строковое выражение, образованное из значений нескольких полей (составной ключ), по которому можно определить значения других полей для одной или нескольких записей таблицы. На практике для использования ключей создаются индексы - служебная информация, содержащая упорядоченные сведения о ключевых значениях. В реляционной теории и концептуальной модели понятие "ключ" применяется для атрибутов отношения или сущности.
Первичный ключ (primarykey) - главный ключевой элемент, однозначно идентифицирующий строку в таблице. Могут также существовать альтернативный (candidatekey) и уникальный (uniquekey) ключи, служащие также для идентификации строк в таблице.
В реляционной теории первичный ключ - минимальный набор атрибутов, однозначно идентифицирующий кортеж в отношении.
В концептуальной модели первичный ключ - минимальный набор атрибутов сущности, однозначно идентифицирующий экземпляр сущности.
Связь (relation) - функциональная зависимость между объектами. В реляционных базах данных между таблицами устанавливаются связи по ключам, один из которых в главной (parent, родительской) таблице - первичный, второй - внешний ключ - во внешней (child, дочерней) таблице, как правило, первичным не является и образует связь "один ко многим" (1:N). В случае первичного внешнего ключа связь между таблицами имеет тип "один к одному" (1:1). Информация о связях сохраняется в базе данных.
Внешний ключ (foreignkey) - ключевой элемент подчиненной (внешней , дочерней)
Для работы с БД используются системы управления базами данных
(СУБД).
СУБД - комплекс языковых и программных средств, предназначенных для создания, ведения и совместного использования БД несколькими пользователями. СУБД позволяет: создавать БД; вставлять, обновлять, удалять и извлекать информацию из БД; предоставляет контролируемый доступ к базе данных.
Взаимосвязь основных терминов в области проектирования баз данных и работы с ними
SQL -- это стандартный язык доступа и управления базами данных (БД).
Язык структурированных запросов - это универсальный язык для создания, модификации и управления информацией, которая входит в состав реляционных баз данных.
Первоначально SQL был основным способом работы с данными. С помощью него пользователь мог выполнять следующие действия: создание новой таблицы в базе данных (БД); добавление новых записей в существующие таблицы; редактирование записей; полное удаление записей; выбор записи из разных таблиц, в соответствии с заданными условиями; изменение вида и структур одной или нескольких таблиц.
По мере своего развития, SQL сильно преобразился и обогатился новыми полезными функциями, в результате чего, все больше стал походить на настоящий язык программирования. На сегодняшний день, SQL - это единственный механизм, который способен связать прикладное программное обеспечение и базу данных. Вот, что такое SQL. SQL обладает несколькими видами запросов.
Стоит отметить, что любой запрос SQL подразумевает под собой или запрос данных из нужной базы, или обращение к базе с обязательным изменением в ней данных. В связи с этим принято выделять следующие виды запросов: создание или изменение в базе данных новых или уже существующих в ней объектов; получение данных; добавление новых данных в таблицу; удаление данных; обращение к системе управления базами данных (СУБД). Немного о преимуществах и недостатках данной системы работы с данными. Преимущества SQL Независимость от существующей в данной системе СУБД. Тексты SQL являются универсальными для многих СУБД.
Однако это правило распространяется на простые задачи, связанные с обработкой данных в таблицах. Наличие стандартов SQL способствует "стабилизации" языка. Декларативность. Это преимущество заключается в том, что при работе с данными, программист выбирает только ту информацию, которая должна быть изменена или модифицирована. То, каким образом это будет сделано, в автоматическом режиме решается на программном уровне самой СУБД. Недостатки SQL SQL не соответствует реляционной модели построения данных. В этом плане, SQL замещает язык Tutorial D, который является истинно реляционным.
Сложность SQL определяет его предназначение. Язык настолько сложен, что им может пользоваться только программист. Хотя изначально он задумывался как средство управления, с которым будет работать обычный пользователь.
На современном рынке средств разработки ИС достаточно много систем, в той или иной степени удовлетворяющих перечисленням требованиям. CASE-средства ERwin и BPwin, разработанные фирмой PLATINUM, входят в число лучших на сегодняшний день.
ERwin - средство разработка структуры базы данных (БД). ERwin сочетает графический интерфейс Windows, инструменты для построения ER-диаграмм, редакторы для создания логического и физического описания модели данных и прозрачную піддержку ведучих реляционных СУБД и настольных баз данных. С помощью ERwin можно создавать или проводить обратное проектирование (реинжиниринг) баз данных.
Возможны две точки зрения на информационную модель и, соответственно, два уровня модели. Первый - логический (точка зрения пользователя) - описывает данные, задействованные в бизнесе предприятия. Второй - физический - определяет представление информации в БД. ERwin объединяет их в единую диаграмму, имеющую несколько уровней представления.
C# (произносится «си шарп») -- объектно-ориентированный язык программирования. Разработан в 1998--2001 годахгруппой инженеров под руководством Андерса Хейлсберга в компании Microsoft как язык разработки приложений для платформы Microsoft .NET Framework и впоследствии был стандартизирован как ECMA-334 и ISO/IEC 23270.
C# относится к семье языков с C-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеетстатическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщённые типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML.
Переняв многое от своих предшественников -- языков C++, Pascal, Модула, Smalltalk и, в особенности, Java -- С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# в отличие от C++ не поддерживает множественное наследование классов (между тем допускается множественное наследование интерфейсов).
C# разрабатывался как язык программирования прикладного уровня для CLR и, как таковой, зависит, прежде всего, от возможностей самой CLR. Это касается, прежде всего, системы типов C#, которая отражает BCL.
Присутствие или отсутствие тех или иных выразительных особенностей языка диктуется тем, может ли конкретная языковая особенность быть транслирована в соответствующие конструкции CLR. Так, с развитием CLR от версии 1.1 к 2.0 значительно обогатился и сам C#; подобного взаимодействия следует ожидать и в дальнейшем (однако, эта закономерность была нарушена с выходом C# 3.0, представляющего собой расширения языка, не опирающиеся на расширения платформы .NET).
3. Разработка даталогической модели базы данных
3.1 Определение базовых таблиц
Каждую сущность необходимо преобразовать в таблицу.
Таблица Абитуриент: предназначена для хранения информации о поступающем абитуриенте .
Таблица Расписание: предназначена для хранения информации о экзаменах и консультации.
Таблица Регистрация: предназначена для хранения информации о номерах групп и потоков.
Таблица Паспортные данные: предназначена для хранения информации о паспорте абитуриента.
Таблица Факультет: предназначена для хранения информации о факультетах.
Таблица Поток: предназначена для хранения информации о потоках.
Таблица Группы: предназначена для хранения информации о группах.
Таблица Кафедра: предназначена для хранения информации о кафедре.
Таблица Оценки: предназначена для хранения информации о оценках абитуриентов.
3.2 Выполнение нормализации таблиц
Нормализация - процесс уменьшения избыточности информации в таблицах реляционной БД и , как следствие, построения оптимальной структуры таблиц и связей.
Нормализация - это разбиение таблицы на две или более обладающих лучшими свойствами при включении, изменении и удалении данных. Окончательная цель нормализации сводится к получению такого проекта БД, в котором каждый факт появляется лишь в одном месте, т.е. исключена избыточность информации. Это делается не только с целью экономии памяти, сколько для исключения возможной противоречивости хранимых данных.
Таблица находится в первой нормальной форме (1НФ) тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле более одного значения и не одно из ее ключевых полей не пусто.
Таблица 1 Абитуриент
Содержание поля |
Имя поля |
|
КодАбитуриента |
IDАбитуриента |
|
Фамилия |
Фамилия |
|
Имя |
Имя |
|
Отчество |
Отчество |
|
ПаспортныеДанные |
IDПаспорта |
|
Учебное заведени |
Учебное заведение |
|
Год Окончания |
Год Окончания |
|
Оценка за экзамен |
ОценкаЗаЭкзамен |
|
Наличие золотой медали |
Наличие золотой медали |
|
Номер аттестата |
Номер аттестата |
1НФ. Таблица 1 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 1 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 1 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 2 Расписание
Содержание поля |
Имя поля |
|
IDПредмета |
IDПредмета |
|
Название предмета |
Название |
|
Номер потока |
Номер потока |
|
Занятия |
Занятия |
|
Дата |
Дата |
1НФ. Таблица 2 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 2 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 2 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 3 Регистрация
Содержание поля |
Имя поля |
|
IDРегистрация |
IDРегистрация |
|
НомерАбитуриента |
IDАбитуриента |
|
Номер группы |
НомерГруппы |
|
Номер потока |
НомерПотока |
|
Название кафедры |
НазваниеКафедры |
|
Название факультета |
НазваниеФакультета |
1НФ. Таблица 3 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 3 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 3 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 4 Факультет
Содержание поля |
Имя поля |
|
IDФакультета |
IDФакультета |
|
Название факультета |
НазваниеФакультета |
1НФ. Таблица 4 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 4 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 4 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 5 Поток
Содержание поля |
Имя поля |
|
IDПотока |
IDПотока |
|
Количество групп |
КоличествоГрупп |
1НФ. Таблица 5 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 5 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 5 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 6 Группы
Содержание поля |
Имя поля |
|
IDГруппы |
IDГруппы |
|
Название группы |
НазваниеГруппы |
1НФ. Таблица 6 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 6 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 6 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 7 Кафедра
Содержание поля |
Имя поля |
|
IDКафедры |
IDКафедры |
|
Название кафедры |
НазваниеКафедры |
1НФ. Таблица 7 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 7 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 7 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 8 Паспортные данные
Содержание поля |
Имя поля |
|
IDПаспорта |
IDПаспорта |
|
Кем выдан |
КемВыдан |
|
Где выдан |
ГдеВыдан |
|
Серия |
Серия |
|
Номер |
Номер |
1НФ. Таблица 8 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 8 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 8 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
Таблица 9 Оценки
Содержание поля |
Имя поля |
|
IDОценки |
IDОценки |
|
Номер Абитуриента |
IDАбитуриента |
|
Номер Предмета |
IDПредмета |
|
Оценка |
Оценка |
1НФ. Таблица 8 удовлетворяет требованиям, т.к. каждая ячейка в таблице содержит атомарное значение
2НФ. Таблица 8 удовлетворяет условию, т.к. все поля зависят от ключевого поля и выполняется условия 1НФ.
3НФ. Таблица 8 удовлетворяет условию, т.к. каждое ключевое поле не зависит от других не ключевых полей.
3.3 Определение ограничения целостности
При разработке БД необходимо принимать во внимание правила обеспечения целостности данных (обеспечивает каскадное обновление записей в связанных таблицах)
При создании БД большое внимание должно быть уделено средствам поддержания данных в целостном состоянии. Рассмотрим предусмотренные стандартом языка SQL функции, которые предназначены для поддержания целостности данных. Эта поддержка включает средства задания ограничений, они вводятся с целью защиты базы данных от нарушения согласованности сохраняемых в ней данных. К таким типам поддержки целостности данных относятся:
· Обязательные данные;
· Ограничения для доменов полей;
· Целостность сущностей;
· Ссылочная целостность;
· Требования конкретного предприятия;
Суррогатные первичные ключи: IDАбитуриента, IDПредмет, IDРегистрация, IDФакультета, IDПотока, IDГруппы, IDКафедры, IDПаспорта.
В БД «Приемная комиссия» в первую очередь заполняются таблицы:
Паспортные данные, Поток, Группы, Факультет, Кафедра.
В таблице «Абитуриент» находится 1 внешний ключ: IDПаспорта. Его мы подставляем из таблицы «Паспортные данные».
В таблице «Расписание» присутствуют 2 внешних ключа: IDПотока и IDАбитуриента. IDПотока мы подставляем из таблицы «Поток», а IDАбитуриента из таблицы «Абитуриент».
В таблице «Оценки» присутствуют 2 внешних ключа: IDПредмета и IDАбитуриента. IDПредмета мы подставляем из таблицы «Расписание», а IDАбитуриента из таблицы «Абитуриент».
В таблице «Регистрация» находятся 5 внешних ключей: IDПотока, IDГруппы, IDФакультета, IDКафедра, IDАбитуриента. IDПотока мы подставляем из таблицы «Поток», IDГруппы мы подставляем из таблицы «Группы», IDАбитуриента мы подставляем из таблицы «Абитуриент», IDФакультета мы подставляем из таблицы «Факультет», IDКафедры мы подставляем из таблицы «Кафедра».
Таблица 10 Абитуриент
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
КодАбитуриента |
IDАбитуриента |
int |
Суррогатный первичный ключ |
|
Фамилия |
Фамилия |
VChar(20) |
Обязательное поле |
|
Имя |
Имя |
VChar(20) |
Обязательное поле |
|
Отчество |
Отчество |
VChar(20) |
Обязательное поле |
|
ПаспортныеДанные |
IDПаспорта |
int |
Внешний ключ к таблице «Паспортные данные» |
|
Учебное заведение |
Учебное заведение |
VChar(20) |
Обязательное поле |
|
Год Окончания |
Год Окончания |
DATE |
Обязательное поле |
|
Наличие золотой медали |
Наличие золотой медали |
VChar(20) |
Обязательное поле |
|
Номер аттестата |
Номер аттестата |
NChar(20) |
Обязательное поле |
Таблица 11 Расписание
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDПредмета |
IDПредмета |
int |
Суррогатный первичный ключ |
|
Название предмета |
Название |
VChar(20) |
Обязательное поле |
|
Номер потока |
IDПотока |
int |
Внешний ключ к таблице «Поток» |
|
Занятия |
Занятия |
VChar(20) |
Обязательное поле |
|
Дата |
Дата |
DATE |
Обязательное поле |
Таблица 12 Регистрация
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDРегистрация |
IDРегистрация |
int |
Суррогатный первичный ключ |
|
НомерАбитуриента |
IDАбитуриента |
int |
Внешний ключ к таблице «Абитуриент» |
|
Номер группы |
НомерГруппы |
int |
Внешний ключ к таблице «Группы» |
|
Номер потока |
НомерПотока |
int |
Внешний ключ к таблице «Поток» |
|
Название кафедры |
НазваниеКафедры |
int |
Внешний ключ к таблице «Кафедра» |
|
Название факультета |
НазваниеФакультета |
int |
Внешний ключ к таблице «Факультет» |
Таблица 11 Факультет
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDФакультета |
IDФакультета |
int |
Суррогатный первичный ключ |
|
Название факультета |
НазваниеФакультета |
VChar(50) |
Обязательное поле |
Таблица 12 Поток
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDПотока |
IDПотока |
int |
Суррогатный первичный ключ |
|
Количество групп |
КоличествоГрупп |
VChar(10) |
Обязательное поле |
Таблица 13 Группы
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDГруппы |
IDГруппы |
int |
Суррогатный первичный ключ |
|
Название группы |
НазваниеГруппы |
VChar(50) |
Обязательное поле |
Таблица 14 Кафедра
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDКафедры |
IDКафедры |
int |
Суррогатный первичный ключ |
|
Название кафедры |
НазваниеКафедры |
VChar(50) |
Обязательное поле |
Таблица 15 Паспортные данные
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDПаспорта |
IDПаспорта |
int |
Суррогатный первичный ключ |
|
Кем выдан |
КемВыдан |
VChar(50) |
Обязательное поле |
|
Когда выдан |
КогдаВыдан |
date |
Обязательное поле |
|
Серия |
Серия |
NChar(10) |
Обязательное поле |
|
Номер |
Номер |
NChar(10) |
Обязательное поле |
Таблица 16 Оценки
Содержание поля |
Имя поля |
Тип, длина |
Ограничения |
|
IDОценки |
IDОценки |
int |
Суррогатный первичный ключ |
|
Номер Абитуриента |
IDАбитуриента |
int |
Внешний ключ к таблице «Абитуриент» |
|
Номер Предмета |
IDПредмета |
int |
Внешний ключ к таблице «Расписание» |
|
Оценка |
Оценка |
NChar(10) |
Обязательное поле |
3.4 Установление связи между таблицами
Отношения - это правила, поддерживаемые на уровне механизма реализации СУБД. Различают три типа отношений:
- Отношение «один-к-одному»: для каждой строки в одной таблице существует не более одной строки связанной таблицы.
- Отношение «один-ко-многим» одна таблица не содержит вообще или имеет набор связанных «дочерних» записей из другой таблице.
- Отношение «многие-ко-многим» для каждой строки в первой таблицы может существовать набор строк в другой таблице и наоборот, такая связь организуется, как правило, при помощи третьей связующей таблицы, содержащей значения первичных ключей обеих таблицы в качестве внешних ключей
№ связи |
Родительская сущность |
Дочерняя сущность |
Тип связи |
|
1 |
Абитуриент |
Расписание |
1:М |
|
2 |
Паспортные данные |
Абитуриент |
1:1 |
|
3 |
Поток |
Расписание |
1:М |
|
4 |
Кафедра |
Регистрация |
1:М |
|
5 |
Факультет |
Регистрация |
1:М |
|
6 |
Группы |
Регистрация |
1:М |
|
7 |
Поток |
Регистрация |
1:М |
|
8 |
Абитуриент |
Регистрация |
1:1 |
|
9 |
Абитуриент |
Оценка |
1:1 |
|
10 |
Предмет |
Оценка |
1:М |
4. SQL - запросы
Запрос1 «Абитуриенты, сдавшие экзамен на 5»
Данный запрос при выполнении дает информацию обо всех абитуриентах, сдавших экзамен на 5:
Данные для этого запроса берутся из таблицы Абитуриент, Оценки.
В режиме SQL запрос выглядит так:
SELECT dbo.Расписание.Занятия, dbo.Расписание.Название, dbo.Оценки.Оценка, dbo.Абитуриент.Фамилия, dbo.Абитуриент.Имя, dbo.Абитуриент.Отчество
FROM dbo.Абитуриент INNER JOIN
dbo.Оценки ON dbo.Абитуриент.IDАбитуриента = dbo.Оценки.IDАбитуриента AND dbo.Абитуриент.IDАбитуриента = dbo.Оценки.IDАбитуриента INNER JOIN
dbo.Расписание ON dbo.Оценки.IDПредмета = dbo.Расписание.IDПредмета
WHERE (dbo.Оценки.Оценка = N'5')
Запрос 2 «Абитуриенты проживающие в Новгородской области»
Данный запрос при выполнении дает информацию количество человек, занимающихся у каждого тренера.
Данные для этого запроса берутся из таблицы Клиенты, Тренеры.
В режиме SQL запрос выглядит так:
SELECT Тренеры.Id_тренера, Тренеры.Фамилия_имя_тренера, Count(Клиенты.Id_клиента) AS Количество
FROM Тренеры INNER JOIN Клиенты ON Тренеры.Id_тренера = Клиенты.Id_тренера
GROUP BY Тренеры.Id_тренера, Тренеры.Фамилия_имя_тренера;
Запрос 3 «Клиенты должники»
Данный запрос при выполнении дает информацию клиентах должниках.
Данные для этого запроса берутся из таблицы Клиенты, Учет.
В режиме SQL запрос выглядит так:
SELECT Клиенты.Код_клиента, Учет.Произведена_оплата
FROM Клиенты INNER JOIN Учет ON Клиенты.Код_клиента = Учет.Код_клиента
WHERE (((Учет.Произведена_оплата)=No));
Запрос4 «Однотабличный подзапрос»
Данный запрос при выполнении дает информацию обо всех клиентах купивших абонемент в июне.
Данные для этого запроса берутся из таблицы Клиенты, Учет.
В режиме SQL запрос выглядит так:
SELECT Клиенты.Код_клиента, Клиенты.Фамилия, Клиенты.Имя
FROM Клиенты
WHERE (((Клиенты.Код_клиента) In (SELECT Учет.Код_клиента
FROM Учет
WHERE (Учет.Месяц)="июнь")));
5. Физическое проектирование
5.1 Создание пользовательского интерфейса
Рисунок 2Form 1. Программа написана на языке C#.
На первой форме располагаются следующие компоненты:
dataGridView- Отображает базу данных.
MenuStrip - Для открытия и редактирования таблиц.
ButtonДобавить - Для добавления таблиц.
ButtonУдалить - Для удаления таблиц.
ButtonОбновить - Для обновления таблиц.
Рисунок 3 Form 2
textBoxButton
textbox - Для заполнения таблиц базы данных.
Button - Для сохранения информации.
5.2 Описание алгоритмов
Для начала необходимо запустить программу, после запуска следует нажать на кнопку таблицы и выбрать соответствующею, после того как таблица отобразилась можно приступать к редактированию.
5.3 Составление инструкции пользователю
Назначение и условия применения:
Данный программный продукт предназначен для быстрого и доступного поиска информации в базе данных.
Подготовка к работе:
Для начала работы с программой необходимо иметь установленную VisualStudio(минимум 15-ой версии).
6. Отчеты
Заключение
В ходе выполнение курсовой работы были получены и закреплены навыки программирования в бреде VisualStudio 2010 C#.
В результате создано работоспособное приложение «База данных Приемная коммисия». Проведенное тестирование работы Администрирования базы данных Гостиницы не выявило существенных ошибок.
В пояснительной записке рассмотрены входные и входные данные, которые содержатся в приложение. Разработал программу Воронин Владислав Михайлович. Проект работает после его выполнения и чётко закрывается после завершения работы. Программа предназначена для решения метода, который дан в задание по курсовому проектированию. Сама программа полностью выполнена по его заданию и содержит всю информацию для работы.Цель курсового проекта достигнута.
Приложение А
ER-диаграмма
Приложение Б
Схема базы данных
Приложение В
Текст программы
Форма 1:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.Common;
using System.Data.SqlClient;
namespace Приемная_комиссия
{
public partial class Form1 : Form
{
private const string АбитуриентEntity = "Абитуриент";
private const string ГруппыEntity = "Группы";
private const string КафедраEntity = "Кафедра";
private const string ОценкиEntity = "Оценки";
private const string ПаспортныеДанныеEntity = "ПаспортныеДанные";
private const string ПотокEntity = "Поток";
private const string РасписаниеEntity = "Расписание";
private const string РегистрацияEntity = "Регистрация";
private const string ФакультетEntity = "Факультет";
public SqlDataAdapter adapter;
public DataSet ПриемнаяКомисияDataSet;
public SqlConnection connect;
public SqlCommand command;
public DataTable table;
public String entityName;
public string tabl = АбитуриентEntity;
public Form1()
{
InitializeComponent();
ПриемнаяКомисияDataSet = new DataSet();
ПриемнаяКомисияDataSet.Tables.Add(АбитуриентEntity);
ПриемнаяКомисияDataSet.Tables.Add(ГруппыEntity);
ПриемнаяКомисияDataSet.Tables.Add(КафедраEntity);
ПриемнаяКомисияDataSet.Tables.Add(ОценкиEntity);
ПриемнаяКомисияDataSet.Tables.Add(ПаспортныеДанныеEntity);
ПриемнаяКомисияDataSet.Tables.Add(ПотокEntity);
ПриемнаяКомисияDataSet.Tables.Add(РасписаниеEntity);
ПриемнаяКомисияDataSet.Tables.Add(РегистрацияEntity);
ПриемнаяКомисияDataSet.Tables.Add(ФакультетEntity);
adapter = new SqlDataAdapter();
connect = new
SqlConnection(Properties.Settings.Default.ПриемнаяКомисияConnectionString);
command = new SqlCommand();
command.Connection = connect;
command.CommandType = CommandType.StoredProcedure;
}
public void slct()
{
adapter = new SqlDataAdapter();
connect = new SqlConnection(Properties.Settings.Default.ПриемнаяКомисияConnectionString);
command = new SqlCommand();
command.Connection = connect;
command.CommandType = CommandType.StoredProcedure;
entityName = tabl;
table = ПриемнаяКомисияDataSet.Tables[entityName];
command.CommandText = entityName + "Select";
adapter.SelectCommand = command;
table.Rows.Clear();
adapter.Fill(table);
dataGridView1.DataSource = table;
}
private void Form1_Load(object sender, EventArgs e)
{
slct();
}
private void абитуриентToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = АбитуриентEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void группыToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = ГруппыEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void кафедраToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = КафедраEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void оценкиToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = ОценкиEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void паспортныеДанныеToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = ПаспортныеДанныеEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void потокToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = ПотокEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void расписаниеToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = РасписаниеEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void регистрацияToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = РегистрацияEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void факультетToolStripMenuItem_Click(object sender, EventArgs e)
{
comboBoxПоиск.Items.Clear();
tabl = ФакультетEntity;
slct();
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
comboBoxПоиск.Items.Add(dataGridView1.Columns[i].HeaderText);
}
}
private void button3_Click(object sender, EventArgs e)
{
try
{
entityName = tabl;
table = ПриемнаяКомисияDataSet.Tables[entityName];
command.CommandText = entityName + "Delete";
adapter.SelectCommand = command;
switch (tabl)
{
case "Абитуриент":
command.Parameters.Add(new SqlParameter("IDАбитуриента", SqlDbType.Int));
command.Parameters["IDАбитуриента"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Группы":
command.Parameters.Add(new SqlParameter("IDГруппы", SqlDbType.Int));
command.Parameters["IDГруппы"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Кафедра":
command.Parameters.Add(new SqlParameter("IDКафедры", SqlDbType.Int));
command.Parameters["IDКафедры"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Оценки":
command.Parameters.Add(new SqlParameter("IDОценки", SqlDbType.Int));
command.Parameters["IDОценки"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "ПаспортныеДанные":
command.Parameters.Add(new SqlParameter("IDПаспорта", SqlDbType.Int));
command.Parameters["IDПаспорта"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Поток":
command.Parameters.Add(new SqlParameter("IDПотока", SqlDbType.Int));
command.Parameters["IDПотока"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Расписание":
command.Parameters.Add(new SqlParameter("IDПредмета", SqlDbType.Int));
command.Parameters["IDПредмета"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Регистрация":
command.Parameters.Add(new SqlParameter("IDРегистрация", SqlDbType.Int));
command.Parameters["IDРегистрация"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
case "Факультет":
command.Parameters.Add(new SqlParameter("IDФакультета", SqlDbType.Int));
command.Parameters["IDФакультета"].Value = Convert.ToInt32(dataGridView1.CurrentRow.Cells[0].Value);
break;
}
adapter.Fill(table);
dataGridView1.DataSource = table;
slct();
}
catch
{
MessageBox.Show("Выберите заполненное поле", "Ошибка");
}
}
SqlCommand cmd;
private void button2_Click(object sender, EventArgs e)
{
SqlConnection connect1;
connect1 = new SqlConnection(Properties.Settings.Default.ПриемнаяКомисияConnectionString);
string entityName = tabl;
connect1.Open();
int b = table.Rows.Count;
for (int i = 0; i < b; i++)
{
switch (tabl)
{
case "Абитуриент":
cmd = new SqlCommand("Update Абитуриент SET Фамилия=@Фамилия, Имя=@Имя, Отчество=@Отчество, IDПаспорта=@IDПаспорта, УчебноеЗаведение=@УчебноеЗаведение, ГодОкончания=@ГодОкончания, НаличиеЗолотойМедали=@НаличиеЗолотойМедали, НомерАттестата=@НомерАттестата Where IDАбитуриента=@IDАбитуриента", connect1);
cmd.Parameters.AddWithValue("@IDАбитуриента", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@Фамилия", dataGridView1.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@Имя", dataGridView1.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@Отчество", dataGridView1.Rows[i].Cells[3].Value);
cmd.Parameters.AddWithValue("@IDПаспорта", dataGridView1.Rows[i].Cells[4].Value);
cmd.Parameters.AddWithValue("@УчебноеЗаведение", dataGridView1.Rows[i].Cells[5].Value);
cmd.Parameters.AddWithValue("@ГодОкончания", dataGridView1.Rows[i].Cells[6].Value);
cmd.Parameters.AddWithValue("@НаличиеЗолотойМедали", dataGridView1.Rows[i].Cells[7].Value);
cmd.Parameters.AddWithValue("@НомерАттестата", dataGridView1.Rows[i].Cells[8].Value);
break;
case "Группы":
cmd = new SqlCommand("Update Группы SET НазваниеГруппы=@НазваниеГруппы Where IDГруппы=@IDГруппы", connect1);
cmd.Parameters.AddWithValue("@IDГруппы", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@НазваниеГруппы", dataGridView1.Rows[i].Cells[1].Value);
break;
case "Кафедра":
cmd = new SqlCommand("Update Кафедра SET НазваниеКафедры=@НазваниеКафедры Where IDКафедры=@IDКафедры", connect1);
cmd.Parameters.AddWithValue("@IDКафедры", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@НазваниеКафедры", dataGridView1.Rows[i].Cells[1].Value);
break;
case "Оценки":
cmd = new SqlCommand("Update Оценки SET IDАбитуриента=@IDАбитуриента, IDПредмета=@IDПредмета, Оценка=@Оценка Where IDОценки=@IDОценки", connect1);
cmd.Parameters.AddWithValue("@IDОценки", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@IDАбитуриента", dataGridView1.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@IDПредмета", dataGridView1.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@Оценка", dataGridView1.Rows[i].Cells[3].Value);
break;
case "ПаспортныеДанные":
cmd = new SqlCommand("Update ПаспортныеДанные SET КемВыдан=@КемВыдан, КогдаВыдан=@КогдаВыдан, Серия=@Серия, Номер=@Номер Where IDПаспорта=@IDПаспорта", connect1);
cmd.Parameters.AddWithValue("@IDПаспорта", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@КемВыдан", dataGridView1.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@КогдаВыдан", dataGridView1.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@Серия", dataGridView1.Rows[i].Cells[3].Value);
cmd.Parameters.AddWithValue("@Номер", dataGridView1.Rows[i].Cells[4].Value);
break;
case "Поток":
cmd = new SqlCommand("Update Поток SET КоличествоГрупп=@КоличествоГрупп Where IDПотока=@IDПотока", connect1);
cmd.Parameters.AddWithValue("@IDПотока", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@КолличествоГрупп", dataGridView1.Rows[i].Cells[1].Value);
break;
case "Расписание":
cmd = new SqlCommand("Update Расписание SET Название=@Название, IDПотока=@IDПотока, Занятия=@Занятия, Дата=@Дата Where IDПредмета=@IDПредмета", connect1);
cmd.Parameters.AddWithValue("@IDПредмета", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@Название", dataGridView1.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@IDПотока", dataGridView1.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@Занятия", dataGridView1.Rows[i].Cells[3].Value);
cmd.Parameters.AddWithValue("@Дата", dataGridView1.Rows[i].Cells[4].Value);
break;
case "Регистрация":
cmd = new SqlCommand("Update Регистрация SET IDАбитуриента=@IDАбитуриента, IDГруппы=@IDГруппы, IDПотока=@IDПотока, IDКафедры=@IDКафедры, IDФакультета=@IDФакультета Where IDРегистрация=@IDРегистрация", connect1);
cmd.Parameters.AddWithValue("@IDРегистрация", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@IDАбитуриента", dataGridView1.Rows[i].Cells[1].Value);
cmd.Parameters.AddWithValue("@IDГруппы", dataGridView1.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@IDПотока", dataGridView1.Rows[i].Cells[3].Value);
cmd.Parameters.AddWithValue("@IDКафедры", dataGridView1.Rows[i].Cells[4].Value);
cmd.Parameters.AddWithValue("@IDФакультета", dataGridView1.Rows[i].Cells[5].Value);
break;
case "Факультет":
cmd = new SqlCommand("Update Факультет SET НазваниеФакультета=@НазваниеФакультета Where IDФакультета=@IDФакультета", connect1);
cmd.Parameters.AddWithValue("@IDФакультета", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
cmd.Parameters.AddWithValue("@НазваниеФакультета", dataGridView1.Rows[i].Cells[1].Value);
break;
}
int Rows = cmd.ExecuteNonQuery();
}
slct();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2(this);
form2.Show();
this.Visible = false;
}
private void toolStripMenuItem2_Click(object sender, EventArgs e)
{
Отчёты отч = new Отчёты();
отч.Show();
this.Visible = false;
отч.reportViewer1.Visible = true;
this.Hide();
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
Application.Exit();
}
private void toolStripMenuItem3_Click(object sender, EventArgs e)
{
Отчёты отч = new Отчёты();
отч.Show();
this.Visible = false;
отч.reportViewer2.Visible = true;
this.Hide();
}
private void оПрограммеToolStripMenuItem_Click(object sender, EventArgs e)
{
AboutBox1 ab = new AboutBox1();
ab.Show();
}
private void button4_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = table;
switch (entityName)
{
case АбитуриентEntity:
BindingSource bs = new BindingSource();
bs.DataSource = dataGridView1.DataSource;
bs.Filter = comboBoxПоиск.Text + " Like '" + textBoxПоиск.Text + "%'";
dataGridView1.DataSource = bs;
break;
case ГруппыEntity:
BindingSource bs1 = new BindingSource();
bs1.DataSource = dataGridView1.DataSource;
bs1.Filter = comboBoxПоиск.Text + " Like '" + textBoxПоиск.Text + "%'";
dataGridView1.DataSource = bs1;
break;
case КафедраEntity:
BindingSource bs2 = new BindingSource();
bs2.DataSource = dataGridView1.DataSource;
bs2.Filter = comboBoxПоиск.Text + " Like '" + textBoxПоиск.Text + "%'";
dataGridView1.DataSource = bs2;
break;
case ОценкиEntity:
BindingSource bs3 = new BindingSource();
bs3.DataSource = dataGridView1.DataSource;
bs3.Filter = comboBoxПоиск.Text + " Like '" + textBoxПоиск.Text + "%'";
dataGridView1.DataSource = bs3;
break;
case ПаспортныеДанныеEntity:
BindingSource bs4 = new BindingSource();
bs4.DataSource = dataGridView1.DataSource;
bs4.Filter = comboBoxПоиск.Text + " Like '" + textBoxПоиск.Text + "%'";
dataGridView1.DataSource = bs4;
break;
case Поток...
Подобные документы
Создание таблиц базы данных с помощью MS Access "Страны Азии". Форма базы данных и запросы к выборкам данных. Модификация структуры таблиц, создания связей между главными таблицами, редактирование данных и проектирование форм для реальной базы данных.
контрольная работа [723,9 K], добавлен 25.11.2012Анализ реквизитного состава налоговой инспекции и установление функциональных зависимостей между реквизитами. Образование информационных объектов. Создание даталогической модели реляционной базы данных. Разработка структур таблиц, обеспечение целостности.
курсовая работа [919,0 K], добавлен 16.09.2012Этапы проектирования базы данных, определение целей и содержание таблиц. Добавление данных и создание других объектов базы данных. Даталогическая модель: структуризация, нормализация, схемы данных. Порядок, принципы создания пользовательского интерфейса.
курсовая работа [1,3 M], добавлен 26.03.2013Создание таблиц базы данных в режиме конструктора. Схема связей между таблицами и содержание таблиц. Установление связи с поддержанием целостности. Структуры двух запросов (в режиме конструктора) и описание процесса их создания. Результаты вывода отчетов.
курсовая работа [3,0 M], добавлен 28.06.2015Рассмотрение инфологической и даталогической модели базы данных кинотеатров города. Разработка базы данных в программе MS Access. Описание структуры приложения и интерфейса пользователя. Изучение SQL-запросов на вывод информации о кинотеатре и о фильме.
курсовая работа [1,1 M], добавлен 04.09.2014Программирование базы данных "Библиотека": составление диаграммы "сущность-связь", построение таблиц, нормализация информации и установление между ними связи типа "Один-ко-многим", разработка меню, форм и инструментальных панелей, запросов и отчетов.
курсовая работа [1,5 M], добавлен 22.11.2010Проектирование концептуальной и логической модели. Установление связи между объектами. Описание входных (таблицы) и выходных (запросы, отчеты) данных. Описание используемых элементов управления и идентификаторов. Разработка интерфейсной части приложения.
курсовая работа [3,2 M], добавлен 24.10.2014Установление связи между таблицами. Создание запроса с параметром для отбора пациентов с определенным видом заболевания. Создание формы для ввода данных, отчетов и главной кнопочной формы. Ход разработки базы данных. Изменение и обновление записей.
курсовая работа [4,5 M], добавлен 20.06.2017Создание таблиц базы данных и связей между ними. Разработка предварительного пользовательского интерфейса. Создание модуля "запросы". Разработка кнопочной формы и запросов. Проект по автоматизации планирования распределения ресурсов предприятия.
отчет по практике [1,9 M], добавлен 17.03.2015Разработка информационной и инфологической модели базы данных на тему "Командировка". Выбор модели данных и составление ее концептуальной схемы. Получение доступа к БД средствами Delphi, разработка пользовательского интерфейса. Реализация SQL-запросов.
реферат [1,2 M], добавлен 16.06.2009Разработка приложения, позволяющего автоматизировать документооборот предприятия по списанию основных средств. Мероприятия по защите и обеспечению целостности базы данных. Разработка клиентского приложения. Запросы к базе данных, руководство пользователя.
курсовая работа [700,0 K], добавлен 14.01.2015Формирование входных и выходных данных, SQL–скрипт генерации таблиц базы данных. Создание интерфейса программного приложения и проектирование форм базы данных. Требования к аппаратно–программному обеспечению. Инструкции по установке и эксплуатации.
курсовая работа [1,6 M], добавлен 08.02.2013Разработка базы данных, содержащей информацию о видах абразивного инструмента и наибольших его рабочих окружных скоростях. Создание вспомогательных таблиц. Установление связи для поддержания ссылочной целостности между ними. Создание формы и ввод данных.
курсовая работа [1,3 M], добавлен 01.12.2014Программирование геоинформационной системы: создание векторного чертежа университета, слоев, блоков, написание базы данных (составление таблиц, их связи, нормализация данных), разработка приложения для связи графической и атрибутивной информации.
курсовая работа [3,0 M], добавлен 30.07.2010Описание первичных и результатных документов, типа связи информационных объектов. Построение информационно-логической модели базы данных и её реализация в СУБД Access (создание таблиц, запросов, форм, отчётов). Разработка интерфейса пользователя.
курсовая работа [2,1 M], добавлен 14.11.2013Создание реляционной базы данных "Деканат ВУЗа", средствами СУБД MS SQL Server 2000. Разработка клиентского приложения с удобным пользовательским интерфейсом (сопровождающегося меню и справочной системой). Описание связей между таблицами базы данных.
курсовая работа [3,0 M], добавлен 06.12.2014Автоматизация работы дежурной службы телекоммуникационной компании. Спецификации сущностей, атрибутов, связей, ссылочной целостности и таблиц. Даталогическая модель базы данных. Запросы пользователей и SQL–запросы. Интерфейс конечного пользователя.
курсовая работа [301,2 K], добавлен 16.02.2013Рассмотрение теоретических основ проектирования. Анализ предметной области и разработка таблиц базы данных. Заполнение таблиц, поиск данных с помощью фильтра. Создание форм, разработка запросов. Создание и настройка отчетов, составление приложения.
курсовая работа [2,8 M], добавлен 01.06.2014Описание торговой сети, сбор данных, которые должны содержаться в базе данных. Определение сущностей и атрибутов и построение концептуальной модели. Переход к физической модели. Определение таблиц, полей и типов данных. Определение связей между таблицами.
курсовая работа [1,5 M], добавлен 31.03.2015Разработка базы данных для спортивной школы с целью ведения учета, контроля и получения информации о нужном студенте. Создание диалогового окна входа в приложение. Составление схемы и структуры базы данных. Разработка пользовательского интерфейса.
курсовая работа [3,4 M], добавлен 08.09.2015