Проектирование базы данных
Курсовая работа, 11 Сентября 2011, автор: пользователь скрыл имя
Описание работы
Практическое задание на тему «Проектирование БД» подразумевает выполнение следующих задач:
определение объектов и их характеристик, которые необходимо хранить в БД (определение исходных данных для проектирования структуры БД);
разработка структуры БД;
разработка уровня доступа к данным;
создание пользовательского интерфейса для работы с БД.
Содержание работы
1. Формулировка задания 3
2. Описание БД 4
3. Описание интерфейса программы 7
3.1. Окно «Категории информационных материалов» 7
3.2. Окно «Информационные материалы» 8
3.3. Окно «Информационный материал» 9
3.4. Окно «Редактирование информационного материала» 10
3.5. Окно «Добавление информационного материала» 11
3.6. Окно «Фильтрация информационных материалов» 12
4. Перечень запросов LINQ to Entities, используемых в приложении 14
5. Листинг программы 16
App.xaml 16
CategoriesWindow.xaml 17
CategoriesWindow.xaml.cs 19
InfoMaterialAddEditWindow.xaml 22
InfoMaterialAddEditWindow.xaml.cs 23
InfoMaterialsFilterWindow.xaml 25
InfoMaterialsFilterWindow.xaml.cs 27
InfoMaterialsWindow.xaml 29
InfoMaterialsWindow.xaml.cs 30
InfoMaterialWindow.xaml 32
InfoMaterialWindow.xaml.cs 34
Convertor.cs 35
Filter.cs 36
Category.cs 38
CategoryRepository.cs 38
InfoMaterial.cs 40
InfoMaterialRepository.cs 40
InfoMaterialsDataManager.cs 42
Файлы: 1 файл
Проектирование базы данных.docx
— 625.74 Кб (Скачать файл)Практическое задание по
прикладному программированию
на тему:
ПРОЕКТИРОВАНИЕ
БАЗЫ ДАННЫХ
Преподаватель:
Студент:
Группа:
Санкт-Петербург
2010
Содержание
1. Формулировка задания 3
2. Описание БД 4
3. Описание интерфейса программы 7
3.1. Окно «Категории информационных материалов» 7
3.2. Окно «Информационные материалы» 8
3.3. Окно «Информационный материал» 9
3.4. Окно «Редактирование информационного материала» 10
3.5. Окно «Добавление информационного материала» 11
3.6. Окно «Фильтрация информационных материалов» 12
4. Перечень запросов LINQ to Entities, используемых в приложении 14
5. Листинг программы 16
App.xaml 16
CategoriesWindow.xaml 17
CategoriesWindow.xaml.cs 19
InfoMaterialAddEditWindow.xaml
InfoMaterialAddEditWindow.
InfoMaterialsFilterWindow.xaml
InfoMaterialsFilterWindow.
InfoMaterialsWindow.xaml 29
InfoMaterialsWindow.xaml.cs 30
InfoMaterialWindow.xaml 32
InfoMaterialWindow.xaml.cs 34
Convertor.cs 35
Filter.cs 36
Category.cs 38
CategoryRepository.cs 38
InfoMaterial.cs 40
InfoMaterialRepository.cs 40
InfoMaterialsDataManager.cs 42
1.
Формулировка задания
Практическое задание на тему «Проектирование БД» подразумевает выполнение следующих задач:
- определение объектов и их характеристик, которые необходимо хранить в БД (определение исходных данных для проектирования структуры БД);
- разработка структуры БД;
- разработка уровня доступа к данным;
- создание пользовательского интерфейса для работы с БД.
2.
Описание БД
Для хранения БД были выбраны объекты, принадлежащие к области «Информационные материалы». Ключевым объектов хранения является информационный материал, включающий следующие характеристики:
- название;
- категорию информационного материала;
- текстовое содержание материала;
- видеоматериалы;
- изображения;
- аннотация к материалу;
- указание на того, кто добавил материал;
- дата публикации;
- комментарии;
- количество просмотров;
- количество голосов;
- общий рейтинг материала (сумма всех опубликованных пользователями рейтингов);
- флаг, доступны ли комментарии к материалу или нет;
- флаг, определяющий в архиве или нет материал;
- флаг, определяющий одобрен ли к публикации материал.
На основе исходных данных по предметной области выделены следующие сущности:
- информационный материал;
- категория информационного материала;
- комментарий;
- видеоматериал;
- изображение.
По сущностям построены таблицы со следующими полями:
Таблица InfoMat_Category
| Название | Тип даных | |
| PK | ID_Category | bigint |
| Name | nchar(30) | |
| Description | nvarchar(max) | |
| Image | image | |
| ParentCategory | bigint |
Таблица InfoMat_InfoMaterial
| Название | Тип даных | |
| PK | ID_InfoMaterial | bigint |
| FK | ID_Category | bigint |
| FK | ID_Image | bigint |
| Name | nvarchar(100) | |
| Text | text | |
| Annotation | nvarchar(max) | |
| Votes | int | |
| TotalRating | int | |
| Rating | float | |
| ViewCount | int | |
| PublishDate | datetime | |
| HasComments | bit | |
| IsApproved | bit | |
| IsArchived | bit |
Таблица InfoMat_Image
| Название | Тип даных | |
| PK | ID_Image | bigint |
| FK | ID_InfoMaterial | bigint |
| Image | image |
Таблица InfoMat_Video
| Название | Тип даных | |
| PK | ID_Video | bigint |
| FK | ID_InfoMaterial | bigint |
| Video | varbinary(max) |
Таблица InfoMat_Comment
| Название | Тип даных | |
| PK | ID_Comment | bigint |
| FK | ID_InfoMaterial | bigint |
| Text | nvarchar(max) | |
| Image | image | |
| AddingDate | datetime | |
| IsDeleted | bit |
Связи между таблицами представлены на рисунке 1.
Рисунок 1 - Структура БД
3.
Описание интерфейса
программы
3.1. Окно «Категории информационных материалов»
После запуска программы появляется окно пользовательского интерфейса «Категории информационных материалов», представленное на рисунке 2.
Основными элементы окна, выделенные на рисунке прямоугольниками:
- Область, в которой отображаются категории информационных материалов.
- Кнопка фильтрации (выбора по признакам) информационных материалов.
- Кнопка удаления выбранной категории.
- Кнопка добавления новой категории.
- Кнопка сохранения сделанных изменений.
- Кнопка возврата из подкатегории, если пользователь просматривает подкатегории выбранной категории.
- Кнопка, предоставляющая ряд действий: фильтрация, сортировка категорий.
- Область, включающая два текстовых поля и кнопку выбора изображения. Эта область используется для редактирования существующих категорий и ввода информации для добавляемых категорий.
Рисунок 2 - Окно «Категории информационных материалов»
- Copyrights (авторские права).
- Область для выбора изображения. После нажатия на кнопку в этой области появляется диалоговое окно, предоставляющее возможность выбора изображения.
- Область, в которой отображена подсказка по перемещению по категориям.
3.2. Окно «Информационные материалы»
После двойного щелчка по категории, не имеющей подкатегории (в том случае, если она имеет подкатегории, осуществляется переход к подкатегориям), открывается окно пользовательского интерфейса «Информационные материалы», представленное на рисунке 3.
Основные элементы окна, выделенные на рисунке прямоугольниками:
- Область, представляющая собой краткую информацию об информационном материале: изображение, название, краткое описание, дату публикации, количество просмотров, рейтинг материала.
- Кнопка просмотра выбранного информационного материала. Также просмотр материала можно осуществлять двойным щелчком по нему.
- Кнопка удаления выбранного материала.
- Кнопка редактирования выбранного информационного материала.
- Кнопка добавления нового информационного материала.
Рисунок 3 - Окно «Информационные материалы»
3.3. Окно «Информационный материал»
Для
просмотра информационного
Основные элементы окна, выделенные на рисунке прямоугольниками:
- Область, содержащая основную информацию материала.
- Область, в которой отображаются комментарии.
- Кнопка удаления выбранного комментария.
- Область, предоставляющая возможность пользователю оставить свой комментарий.
- Кнопка, добавляющая набранный комментарий к уже существующим.