База данных

Автор работы: Пользователь скрыл имя, 27 Марта 2011 в 09:22, курсовая работа

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

Данная курсовая есть результат работы, выполненной в ходе изучения дисциплины “Базы данных”. В качестве задания необходимо создать программу, предназначенную для работы с базой данных, содержащей в себе информацию об учебных планах. На мой взгляд, были выполнены все требования и пожелания преподавателя касаемо функционирования и представления данных.

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

1.Введение………………………………………………………………………...3
2.Задача
a.Предметная область и ER-диаграмма……………….………………………………………………..4
b.Физическая модель данных (макеты таблиц)…………………………. 5
c.Список явных ограничений целостности……………………………………………………………….6
3.Описание приложения
a.Функции и процедуры, а так же связи.......………………………...……7
b.Классы, их методы и поля класса………………………………………25
4.Описание функционирования базы данных
a.Процедуры и функции по реализации ограничений целостности, включая SQL запросы……………………………………………….......28
b.SQL запросы по ведению электронного аналога документа…………………………………………………………….…..29
5.Описание экранных форм……………………………………………………...30
6.Руководство по эксплуатации………………………………………………....31
7.Заключение…………………………………………………………………..….32
8.Список литературы………………………………………………………..……33
9.Приложение……………………………………………………………….….…34

Файлы: 1 файл

Курсовая работа.docx

— 546.75 Кб (Скачать файл)

Пояснительная записка к курсовой работе

по дисциплине «Базы данных»

                                       

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ  УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО  ОБРАЗОВАНИЯ 

ТИХООКЕАНСКИЙ ГОСУДАРСТВЕННЫЙ  УНИВЕРСИТЕТ 

                                                                      Кафедра “ПО” 

Хабаровск  2010

  Выполнил: Ермаков А.В.  
ВМ-81
       Проверил: Федосеев А. А.
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Содержание

  1. Введение………………………………………………………………………...3
  2. Задача
    1. Предметная область и ER-диаграмма……………….………………………………………………..4
    2. Физическая модель данных (макеты таблиц)…………………………. 5
    3. Список явных ограничений целостности……………………………………………………………….6
  3. Описание приложения
    1. Функции и процедуры, а так же связи.......………………………...……7
    2. Классы, их методы и поля класса………………………………………25
  4. Описание функционирования базы данных
    1. Процедуры и функции по реализации ограничений целостности, включая SQL запросы……………………………………………….......28
    2. SQL запросы по ведению электронного аналога документа…………………………………………………………….…..29
  5. Описание экранных форм……………………………………………………...30
  6. Руководство по эксплуатации………………………………………………....31
  7. Заключение…………………………………………………………………..….32
  8. Список литературы………………………………………………………..……33
  9. Приложение……………………………………………………………….….…34

 

Введение

         Данная  курсовая есть результат работы, выполненной  в ходе изучения дисциплины “Базы  данных”. В качестве задания необходимо создать программу, предназначенную для работы с базой данных, содержащей в себе информацию об учебных планах. На мой взгляд, были выполнены все требования и пожелания преподавателя касаемо функционирования и представления данных. Работа была сопряжена с «двигателем» базы данных SQLite, средой QT, и генератором отчётов eXaro. Были реализованы необходимые запросы для функционирования базы, а также реализована возможность отображения в отчёте только тех данных, которые попали в результат поиска, что значительно повышает ценность данного приложения.

Описание  предметной области

   Разработанное приложение предназначено для ведения  базы данных, содержащей в себе информацию об учебных планах. С помощью этого приложения можно добавлять и удалять из базы дисциплины, преподавателей, студентов и учебные планы, диски, просматривать содержимое базы данных и многое др. Выходным документом является отчёт, который формируется в зависимости от выбранного студента. База отвечает на вопросы: какие дисциплины будет вести преподаватель у студентов, обучающихся по индивидуальному плану в 2003 году? С какими студентами, обучающимися по индивидуальному плану, предстоит работать преподавателю по предмету «Компьютерная графика»? Нужно ли проводить прием экзамена по дисциплине «БД» у студента Сидорова К.Н.? Сколько часов лаб.работ необходимо провести со студентом Петровым В.С. по дисциплине «БД»?   

  Объекты обладают следующими связями:

  1. Дисциплины
    1. Код дисциплины
    2. Название дисциплины
  2. Студенты
    1. Код студента
    2. Имя студента
    3. Форма обучения
    4. Год поступления
  3. Преподаватели
    1. Код преподавателя
    2. Имя преподавателя
  4. Учебные ланы
    1. Код плана
    2. Название плана
    3. Год утверждеиия
    4. Продолжительность обучения
  5. Студент-План
    1. Код студента
    2. Код плана

    Студент может иметь только один учебный план, а план может иметь неограниченное количество студентов. 
 
 

Студент

Учебный план

Дисциплина-преподаватель

    1. Код предмета
    2. Код преподавателя
 
 
 

    У дисциплины может быть только один преподаватель, а преподаватель может преподавать несколько дисциплин.

Дисциплина

Преподаватель

 
 

  1. Дисциплина-План
    1. Код дисциплины
    1. Код плана
    2. Курс
    3. Лекции
    4. Лаб.работы
    5. Практики
    6. Зачёт
    7. Экзамен

      У учебного  плана может быть до шести  одинаковых дисциплин (в зависимости  от курса), у дисциплины может быть неограниченное количество учебных планов. 

Учебные планы

Дисциплины

 
 
 
 

Физическая  модель данных (макеты таблиц)

  Объекты обладают следующими связями:

  1. Дисциплины
    Disciplina
    Код Название
    ID_disc* a_ disc
    I A(20)
  1. Студенты
Student
Код ФИО Форма обуч. Год поступления
ID_stud* a_stud b_stud year_stud
I A(30) A(5) I
 
 
 
 
 
 
  1. Преподаватели
Prepodavatel
Код ФИО
ID_prep* а_prep
I A(30)
 
 
 
 
 
  1. Учебные планы
Plan
Код Название Год Продолжит. обуч.
ID_plan* b_plan year_plan prod_year
I A(30) I I
 
 
 
 
 
 
  1. Студент-План
Inf_Stud
Код студента Код плана
ID_stud* ID_plan
I I
 
 
 
 
 
  1. Дисциплина-Преподаватель
Inf_Disc
Код дисциплины Код преподавателя
ID_disc * ID_prep
I I
 
 
 
 
 
 
  1. Дисциплина-Преподаватель
Inf_Plan
Код

дисциплины

Код

плана

Курс Лекц. Лаб. Практ. Зачёт Экзамен
ID_disc * ID_prep* kurs lec labs prakt zach exam
I I I I I I I I

список  явных ограничений  целостности

  1. Не может  быть больше одной дисциплины с одинаковым названием.
  2. Не может быть двух и более одинаковых учебных планов.
  3. Не может быть удалён студент, для которого определён учебный план. При удалении студента необходимо удалять связанные поля в таблице «Студент-План».
  4. При удалении дисциплины необходимо удалять также связанные поля в таблице «Дисциплина-Преподаватель» и «Дисциплина-План».
  5. При удалении учебного плана необходимо также удалять связанные поля в таблице «Дисциплина-План» и «Студент-План».
  6. При удалении преподавателя необходимо также удалять связанные поля в таблице «Дисциплина-Преподаватель».
  7. Нельзя добавлять связи для несуществующих студентов, преподавателей, планов и дисциплин.

функции и процедуры

Основной  класс MainWindow отвечает за соединение с  базой данных, а также за правильное отображение, редактирование и поиск  данных. Пять зависимых класса визуально облегчают представление и редактирование данных. Основной класс содержит главные функции и процедуры для работы с базой. 

Соединение  с базой выполняется следующим образом:

    db=QSqlDatabase::addDatabase("QSQLITE");

    db.setDatabaseName("baza.db ");

    db.open(); 

Отображение таблиц:

     //Вывод таблицы Disciplina

         Disciplina=new QSqlTableModel(0,db);

         Disciplina->setTable("Disciplina");

         Disciplina->select();

      Disciplina->setEditStrategy(QSqlTableModel::OnManualSubmit);

         ui->disc_viev->setModel(Disciplina);

         ui->disc_viev->setColumnHidden(0,true);

     //Вывод таблицы Prepodavatel

         Prepodavatel=new QSqlTableModel(0,db);

         Prepodavatel->setTable("Prepodavatel");

         Prepodavatel->select();

         Prepodavatel->setEditStrategy(QSqlTableModel::OnManualSubmit);

         ui->prep_viev->setModel(Prepodavatel);

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