Проектирование базы данных

Автор работы: Пользователь скрыл имя, 11 Сентября 2011 в 23:00, курсовая работа

Описание работы

Практическое задание на тему «Проектирование БД» подразумевает выполнение следующих задач:
определение объектов и их характеристик, которые необходимо хранить в БД (определение исходных данных для проектирования структуры БД);
разработка структуры БД;
разработка уровня доступа к данным;
создание пользовательского интерфейса для работы с БД.

Содержание работы

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 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. Формулировка задания

 

       Практическое  задание на тему «Проектирование БД» подразумевает выполнение следующих задач:

    • определение объектов и их характеристик, которые необходимо хранить в БД (определение исходных данных для проектирования структуры БД);
    • разработка структуры БД;
    • разработка уровня доступа к данным;
    • создание пользовательского интерфейса для работы с БД.

 

 
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.

       Основными элементы окна, выделенные на рисунке  прямоугольниками:

    1. Область, в которой отображаются категории информационных материалов.
    2. Кнопка фильтрации (выбора по признакам) информационных материалов.
    3. Кнопка удаления выбранной категории.
    4. Кнопка добавления новой категории.
    5. Кнопка сохранения сделанных изменений.
    6. Кнопка возврата из подкатегории, если пользователь просматривает подкатегории выбранной категории.
    7. Кнопка, предоставляющая ряд действий: фильтрация, сортировка категорий.
    8. Область, включающая два текстовых поля и кнопку выбора изображения. Эта область используется для редактирования существующих категорий и ввода информации для добавляемых категорий.

       Рисунок 2 - Окно «Категории информационных материалов»

    1. Copyrights (авторские права).
    2. Область для выбора изображения. После нажатия на кнопку в этой области появляется диалоговое окно, предоставляющее возможность выбора изображения.
    3. Область, в которой отображена подсказка по перемещению по категориям.

3.2. Окно «Информационные материалы»

       После двойного щелчка по категории, не имеющей  подкатегории (в том случае, если она имеет подкатегории, осуществляется переход к подкатегориям), открывается  окно пользовательского интерфейса «Информационные материалы», представленное на рисунке 3.

       Основные  элементы окна, выделенные на рисунке  прямоугольниками:

    1. Область, представляющая собой краткую информацию об информационном материале: изображение, название, краткое описание, дату публикации, количество просмотров, рейтинг материала.
    2. Кнопка просмотра выбранного информационного материала. Также просмотр материала можно осуществлять двойным щелчком по нему.
    3. Кнопка удаления выбранного материала.
    4. Кнопка редактирования выбранного информационного материала.
    5. Кнопка добавления нового информационного материала.

       Рисунок 3 - Окно «Информационные материалы»

3.3. Окно «Информационный  материал»

       Для просмотра информационного материала, т.е. для просмотра полной информации о нём: полного текста, комментариев, необходимо нажать кнопку 2, после чего появляется окно пользовательского интерфейса «Информационный материал». Это окно представлено на рисунке 4.

       Основные  элементы окна, выделенные на рисунке  прямоугольниками:

    1. Область, содержащая основную информацию материала.
    2. Область, в которой отображаются комментарии.
    3. Кнопка удаления выбранного комментария.
    4. Область, предоставляющая возможность пользователю оставить свой комментарий.
    5. Кнопка, добавляющая набранный комментарий к уже существующим.

Информация о работе Проектирование базы данных