Разработка базы данных "Сессия"
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
«ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ
ПЕДАГОГИЧЕСКИЙ
УНИВЕРСИТЕТ»
ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ И СОЦИАЛЬНЫХ ТЕХНОЛОГИЙ
КАФЕДРА ИНФОРМАТИКИ
КУРСОВОЙ ПРОЕКТ
по дисциплине «Программирование»
на тему: Разработка базы данных «Сессия»
Выполнил студент 3 курса группы И-08-2
Маркосян Арсен Борисович _____________________________
Научный руководитель: ______________________________
Липецк 2010
Содержание
Введение…………………………………………………………
Глава 1. Теоретическое исследование предметной области…………………...4
1.1. Анализ аналогичных
информационных систем ……………………
1.2. Характеристика
1.3. Назначение и цели создания системы…………………………………7
Глава 2. Описание информационной системы………………………………….8
2.1. Схема функциональной
структуры системы с кратким
описанием………………………………………………………
2.2. Описание информационных
функций и комплекса решаемых
задач…………………………………………………………………
2.3. Разработка решений
по специальному
Заключение……………………………………………………
Библиографический список………………………………………………...19
ПРИЛОЖЕНИЯ
Приложение 1. «Руководство оператора»……………………………………20
Приложение 2. «Листинг исходного кода ИС»………………………………25
ВВЕДЕНИЕ
База данных, говоря коротко -
это средство для реляционного
и эффективного хранения
Целью данной работы является разработка приложения для работы с базой данных по учёту за успеваемостью студентов, поступивших в ВУЗ, необходимо создать наиболее удобный интерфейс для пользователя при работе с разрабатываемой базой данных. Для выполнения цели курсовой работы необходимо обозначить следующие задачи. Они включают в себя:
- ознакомление
с программами,
- работу с особым набором компонентов предназначенных для создания и редактирования базы данных;
- ознакомление
с подобными базами данных
используемых в магазинах
- ознакомление
с принципами действия в
- разработку
программного кода для
Глава 1 . ТЕОРЕТИЧЕСКОЕ ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ.
1.1. Анализ аналогичных информационных систем
Базы данных (БД) составляют в настоящее время основу компьютерного обеспечения информационных процессов, входящих практически во все сферы человеческой деятельности.
В наше время
информация играет ключевую
Мощность информационного
банка данных обусловлена
С точки зрения пользователя, база данных – это программа, которая обеспечивает работу с информацией. При запуске такой программы на экране, как правило, появляется таблица, просматривая которую пользователь может найти интересующие его сведения. Если система позволяет, то он может внести изменения в базу данных: добавить новую информацию или удалить ненужную.
С точки зрения программиста, база данных – это набор файлов, содержащих информацию. Разрабатывая базу данных для пользователя, программист создает программу, которая обеспечивает работу с файлами данных.
В настоящее время существует достаточно большое количество программных систем, позволяющих создавать и использовать локальные (dBASE, FoxPro, Access, Paradox) и удаленные (Interbase, Oracle, Sysbase, Infomix, Microsoft SQL Server) базы данных.
Также для создания информационных систем используют 1С: предприятие. 1С:Предприятие — программный продукт компании 1С, предназначенный для быстрой разработки прикладных решений. Технологическая платформа «1С:Предприятие» не является программным продуктом для использования конечными пользователями, которые обычно работают с одним из многих прикладных решений (конфигураций), использующих единую технологическую платформу. Платформа и прикладные решения, разработанные на её основе, образуют систему программ «1С:Предприятие», которая предназначена для автоматизации различных видов деятельности, включая решение задач автоматизации учёта и управления на предприятии (КИС).
Средства быстрой разработки
представлены визуальным «конфигурированием», которое позволяет разработчику сосредоточиться
на создании бизнес-логики приложения и не заниматься технологическими
подробностями, такими, как организация
взаимодействия с базой данных, обработка транзакционных блоки
Средой разработки этой базы данных является среда программирования Delphi, так как Delphi предоставляет разработчику широкий набор простых в использовании инструментов, позволяющих быстро разрабатывать сложные проекты, создавая приятный и удобный пользовательский интерфейс. В этой среде очень просто работать с любым современным сервером баз данных, для которого есть соответствующий драйвер. Связь с базой данных в Delphi устанавливается настройкой всего нескольких свойств и заданием пары-тройки дополнительных параметров.
В состав Delphi входят компоненты, позволяющие создавать программы работы с файлами данных, созданными различными системами: от dBASE до Infomix и Oracle. Delphi также позволяет программисту, используя утилиту Borland Database Desktop, создавать файлы баз данных в различных форматах.
Преимущества Delphi по сравнению с аналогичными программными продуктами:
- Быстрота разработки приложения;
- Высокая производительность разработанного приложения;
- Низкие требования разработанного приложения к ресурсам компьютера;
- Наращиваемость за счет встраивания новых компонентов и инструментов в среду Delphi
- Удачная проработка иерархии объектов
1.2 Характеристика
При поступлении в ВУЗ нового студента данные о нём заносятся в базу, так же если на работу устраивается преподаватель – его данные забиваются в базу, аналогично с появлением новых дисциплин, их данные тоже заносятся в базу.
Все данные вводятся в программу, путём прямого ввода через определённые диалоговые окна автоматизированной информационной системы.
То есть
оператор регистрирует новых
студентов, вносит личные
1.3. Назначение и цели разработки системы.
Целью разработки информационной системы является автоматизация деятельности деканата по отношению к успеваемости студентов.
Исходя из цели основными процессами являются:
- Учет сдачи сессии.
- Учет работы преподавателей.
- Отчеты.
Основными задачами, требующими автоматизации, являются:
- Ввод и хранение данных о студентах и их оценках;
- Создание отчётов (ведомостей);
- Вывод необходимых данных, для последующего принятия решений руководством.
Глава 2. Описание информационной системы
2.1. Схема функциональной структуры системы с кратким описанием.
В базе данных пользователь имеет возможность перемещаться по записям с целью получения необходимых данных.
Также пользователь имеет возможность работы с данными базы, то есть добавление, удаление и редактирование записей всех таблиц базы данных.
Рис. 2.1. Схема работы пользователя с СУБД
Приложения, работающие с базами данных, состоят из интерфейса пользователя, компонентов представляющих общий доступ к базе данных, и компонентов соединяющих их друг с другом и источником данных. С помощью них можно легко разработать приложение. Базовый механизм доступа данных основывается на трех важных компонентах:
1) компонентах класса TDataSet (Набор данных);
2) компонентах TDataSourse;
3) визуальных компонентах отображения данных, формирующих интерфейс пользователя.
Рис 2.2 Общая схема базы данных.
- Описание информационных функций и комплекса решаемых задач.
Для разработанной базы данных использовалось 6 таблиц.
- Sessia
- ZdachaSessii
- STUDENT
- Prepodavateli
- Disziplini
- Groops
1
∞
(
- постановочное поле,
Рис 2.3 Схема данных.
В таблице Sessia хранятся сведения о экзаменах и зачётах. В таблице ZdachaSessii хранится информация о студентах и их оценках. Таким образом в таблице Sessia существует уникальное поле, которому может соответствовать несколько записей во второй таблице. Такая связь называется один ко многим.
Все таблицы базы данных размещаются в одном каталоге . Поэтому перед созданием БД следует создать её каталог E:\STUDDATA. Создание самих таблиц осуществляется с помощью утилиты Database Desktop , входящий в комплект поставки Delphi. С помощью Database Desktop можно создавать или изменять записи, просматривать их и т.д.
Для создания таблицы Sessia следует выбрать команду File > New > Table. Database Desktop откроет окно Create Table, в котором можно выбрать тип таблицы. Тип Paradox 7 является наилучшим для данной работы, этот вариант предложен по умолчанию. Далее на экране появится окно, предназначенное для создания / редактирования структуры таблицы.
В колонку Field Name помещается имя поля, в колонку Type – символ, определяющий тип хранимых в поле данных, в колонку Size – число, определяющее длину поля (требуется не для всех типов полей), и, наконец, в колонку Key – символ звёздочки (*), если значениям этого поля нужно построить первичный ключ.
Рис 2.4 Структура поля таблицы Sessia
Рис 2.5 Структура поля таблицы ZDachaSessii
Рис 2.6 Структура поля таблицы STUDENT
Рис 2.7 Структура поля таблицы Prepodavateli
Рис 2.8 Структура поля таблицы Disziplina
Рис 2.9 Структура поля таблицы Groops
Таблица 1.
Используемые типы данных.
Тype |
Тип |
Описание |
A |
Alpha |
Текстовое поле указанной длины |
$ |
Money |
Денежное поле |
I |
Long Integer |
Целые числа в диапазоне от -2147483648 до + 2147483648 |
D |
Data |
Дата в диапазоне от 01.01.0000 до 31.12.9999 |
S |
Short |
Целые числа в диапазоне от -32768 до +32767 |
T |
Time |
Время с точностью до миллисекунд |
+ |
Avtoincrement |
Автоинкрементное поле |
2.3 Разработка приложения
Создадим
псевдоним для нашей базы
Запустите Delphi и начните новый проект. Зрительно разделим форму на 2 части, в поместим 3 панели TРanel. На эти панели поместите 2 сетки DBGrid и а на 3-ю поместим кнопку навигатора БД TDBNavigator (вкладка Data Controls). На 2-ю панель помимо DBGrid поместим Image (вкладка Additional) .
В программе нам понадобится 6 компонентов TDataSourse, и 6 компонента TTable. Разместим их в отдельном модуле данных, чтобы эти компоненты не загромождали основное окно. Выберите команду File > New > Other и на вкладке New дважды щёлкните на значке Data Module. Назовём модуль DM. Затем свяжите созданный модуль с проектом.
Чтобы данные из таблиц отображались в сетках DBGrid, их нужно связать с помощью специального компонента TDataSource .Для этого в свойствах DataSource таблиц выбираем компоненты DataSource, рассположенные на модуле данных, соответственно Dm.DataSource1 и Dm.DataSourse2. Далее в свойствах DataSet компонентов DataSourse выбираем компоненты TTable. Теперь свойствам Active в каждом компоненте TTable присваивается значение true.
Наборы данных Sessia и ZdachaSessii связаны отношением один ко многим: единственной записи в первой таблице соответствует несколько записей во второй. Чтобы программа согласованно отображала данные, её нужно предварительно подготовить к этому. Перейдите на вкладку Diagram в окне кода модуля данных и с помощью мыши перетащите компоненты Sessia и ZdachaSessii из окна дерева объектов на вкладку Diagram. Перетаскивание реализуется классическим способом Drag&Drop. Для установления связи между таблицами щёлкните на кнопке Master Detail панели инструментов, подведите указатель мыши в виде перечёркнутого круга к нижней кромке верхней таблицы (в этот момент указатель превратится в крестик), нажмите левую кнопку мыши и, удерживая её нажатой, прочертите линию к верхней кромке нижней таблицы, после чего отпустите кнопку. На экране появится окно конструктора связей. Чтобы установить связь, нужно указать связанные поля этих 2-х таблиц. Выбрав связываемые поля (Nomer и Nomer) щёлкните на кнопке Add. Щелчком ОК закройте окно конструктора связей. После выполнения этих действий между таблицами Sessia и ZdachaSessii устанавливается связь по полю ZSessia, о чём свидетельствует вид окна Data Diagram на рис. 2.10.
Рис. 2.10 Связь между таблицами
Создадим 4 новые формы, на каждой
из которых разместим панель TP
Рис. 2.11. Изображение пунктов меню.
Создаем отчет. Для этого нам потребуются компоненты QRLable, QRDBText, QRBand с вкладки QReport
Рис. 2.13 Результат оформления отчета
ЗАКЛЮЧЕНИЕ.
В данной курсовой работе представлен процесс разработки информационной системы сдача сессии.
Создавая модель информационной системы сдача сессии, я произвел:
- изучил возможности Delphi;
- провел исследование процесса создания базы данных;
- сделал вывод о проделанной работе и проанализировала структуру исследуемого объекта;
- определил объект и предмет исследования;
- подробно ознакомился с предметной областью системы;
- учет работы преподавателей;
- учет сдачи сессии;
- Ввод и хранение данных о студентах и их оценках;
- создание итогового отчета (ведомости);
Возможны следующие пути будущих исследований:
- более детальное изучение предметной области (в частности, дальнейшая декомпозиция диаграмм);
- реализация новых функций в информационной системе;
- применение файл-серверных или клиент-серверных технологий;
- переработка информационной системы для использования в предприятиях сложной структуры.
Созданная система является открытой и может быть модифицирована лицами, владеющими навыками программирования (создания баз данных) в среде Delphi .
Таким образом, все цели и задачи, поставленные в данной курсовой работе, выполнены полностью, а полученные результаты могут быть использованы в реальности.
Библиографический список
- В.В. Фаронов, Учебный курс, Программирование баз данных в Delphi 7,Москва, Санкт-Петербург, 2003.-461 с.
- В.Э.Гофман, А.Д. Хоменко. Работа с базами данных в Delphi / -CПб.: БХВ – Санкт-Петербург,2000.-672с.
- Г. Гарсиа-Молина. Системы баз данных. Полный курс. / Г. Гарсиа-Молина, Д. Ульман, Д. Уидом. – М.: Вильямс, 2003. – 1088 с.
- Г.Н. Калянов CASE. Структурный системный анализ (автоматизация и применение). М.: Лори, 1996. – 242 с.
- Е.В. Мещереков, А.Д. Хоменко, Публикация баз данных в Интернете.-СПб.:БХВ-Петербург, 2001.-560 с.
- Информатика. Учебное пособие /Под ред. В.Г. Кирия. – Иркутск: ИрГТУ, 1998 часть 2. – 382с.
- Карпова Т.С. "Базы данных: модели, разработка" - СПб.: Питер, 2001, 304 с.
ПРИЛОЖЕНИЕ 1.
Руководство оператора.
При запуске программы Sessia на экране появляется главная форма, содержащая кнопки для перехода к таблицам «Сессия» и «Здача сессии» (рис.1).
Рис.1 Главная форма fmSessia
При нажатии пункта в меню «Личные данные студента» появится форма с данными о студентах (рис.2).
Рис.2 Личные данные студентов
При
нажатии кнопки добавить
Рис.3 Добавление студента. Рис.4 Изменение данных о студенте
При
нажатии пункта в меню «
Рис.5 Преподавательский состав
При
нажатии кнопки добавить
Рис.6 Добавление преподавателя
При
нажатии пункта в меню «
Рис.8 Дисциплины
При
нажатии кнопки добавить
Рис.9 Добавление
предмета
При нажатии пункта в меню «группы» появится форма с данными о группах (рис.11).
Рис.11 Группы
При нажатии кнопки добавить появится форма (рис.12) для добавления информации. А при нажатии кнопки изменить появится форма (рис.13) для изменения данных о группах.
Рис.12 Добавление группы Рис.13 Замена Группы
Для удаления какой-либо строки из выше перечисленных таблиц нужно нажать кнопку «Удалить» и в появившемся окне выбрать нужный вариант.
Рис.14 Удалить
Приложение 2
Листинг исходного кода ИС
unit fmSessiaU;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, DBCtrls, Grids, DBGrids, ExtCtrls, Menus;
type
TfmSessia = class(TForm)
Panel1: TPanel;
Splitter1: TSplitter;
Panel3: TPanel;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
Panel2: TPanel;
DBGrid2: TDBGrid;
Image1: TImage;
procedure N6Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure N8Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmSessia: TfmSessia;
implementation
uses dmSessiaU, fmStudentU, fmDisziplinyU, fmPrepodU, fmGroopU, fmLookUpU,
fmPrintU;
{$R *.dfm}
procedure TfmSessia.N6Click(Sender: TObject);
begin
fmSessia.Close;
end;
procedure TfmSessia.N4Click(Sender: TObject);
begin
fmStudent.Visible:=true;
end;
procedure TfmSessia.N3Click(Sender: TObject);
begin
fmDisziplina.Visible:=true;
end;
procedure TfmSessia.N2Click(Sender: TObject);
begin
fmPrepod.Visible:=true;
end;
procedure TfmSessia.N7Click(Sender: TObject);
begin
fmGroop.Visible:=true;
end;
procedure TfmSessia.FormActivate(Sender: TObject);
var k1,k2:integer;
begin
while not DM.SESSIA.Eof do
begin
k1:=0;k2:=0;
while not DM.ZDACHASESSII.Eof do
begin
k1:=k1+1;
if (DM.ZDACHASESSIIZOcenka.Value > 2) then k2:= k2+1;
DM.ZDACHASESSII.Next;
end;
DM.SESSIA.Edit;
DM.SESSIA['SKolCHel']:=k1;
DM.SESSIA['SKolSdav']:=k2;
DM.SESSIA.Post;
DM.SESSIA.Next;
end;
end;
procedure TfmSessia.N8Click(Sender: TObject);
begin
fmPrint:= TfmPrint.Create(Self);
fmPrint.QuickRep1.Preview;
fmPrint.Free;
end;
end.
unit fmStudentU;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, ExtCtrls, StdCtrls;
type
TfmStudent = class(TForm)
Panel2: TPanel;
DBGrid1: TDBGrid;