98739

Разработка программы в среде Borland Delphi

Курсовая

Информатика, кибернетика и программирование

Имеется база данных о студентах, проживающих в общежитиях. Обеспечить ведение базы данных и равномерное расселение студентов по комнатам. Для этого в каждом общежитии должно быть определено оптимальное число студентов в комнате.

Русский

2015-11-06

166.92 KB

1 чел.

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

Приволжский государственный технологический университет

Кафедра ИВС

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовой работе по дисциплине

«База данных»

Вариант №18

Выполнил: ст. гр. ИВТ-41

Тимофеев А.И.

Проверил: Галочкин В.И.

Йошкар-Ола

2012

Аннотация

В данной курсовой работе разработана программа в среде Borland Delphi, которая организует работу с базой данных общежития, с возможностью переселения. Руководство по использованию данной программы приведено в “Руководстве пользователя”.


ТЕХНИЧЕСКОЕ ЗАДАНИЕ

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

Содержание

Аннотация - 2 -

Техническое задание - 3 -

Содержание - 4 -

Введение - 5 -

Описание базы данных - 6 -

Сведения о программной реализации - 8 -

Руководство пользователя - 9 -

Руководство программиста - 10 -

Заключение - 17 -

Список литературы - 18 -


ВВЕДЕНИЕ

Часто для успешного функционирования различным организациям требуется развитая информационная система, реализующая автоматизированный процесс сбора, манипулирования и обработки данных.

Современной формой информационных систем являются банки данных, имеющие в своем составе:

  1.  вычислительную систему;
  2.  систему управления базами данных (СУБД);
  3.  одну или несколько баз данных (БД);
  4.  набор прикладных программ (приложений БД).

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

  1.  непротиворечивой;
  2.  не избыточной;
  3.  целостной.

Одну из таких БД требуется реализовать в данном курсовом проекте. В качестве программной среды взят Delphi 7. Хотя система Delphi и не является СУБД в буквальном смысле этого слова, тем не менее, она обладает вполне развитыми возможностями СУБД. Предоставляемые Delphi средства обеспечивают создание и ведение локальных и клиент- серверных БД, а также разработку приложений для работы практически с любыми БД. Назвать систему Delphi обычной СУБД мешает, наверное, только то, что, с одной стороны, у нее нет «своего» формата таблиц (языка описания данных), поэтому она использует форматы таблиц других СУБД, например, dBase, Paradox или InterBase (это вряд ли является недостатком, поскольку названные форматы хорошо себя зарекомендовали); с другой стороны. В плане создания приложений различного назначения, в том числе приложений БД, возможности Delphi не уступают возможностям специализированных СУБД, а зачастую и превосходят их.


ОПИСАНИЕ БАЗЫ ДАННЫХ

ER-диаграмма

Описание состава и содержимого таблиц

Таблица Fakultet  (информация о факультетах ):

Таблица Obshaga (информация об общежитиях):

Таблица Profession  (информация об специальностях):

Таблица Rooms  (информация о комнатах):

Таблица Stud  (информация о студентах):


CВЕДЕНИЯ О ПРОГРАММНОЙ РЕАЛИЗАЦИИ

Данная база данных реализована в среде Embarcedero RAD Studio XE2 с использованием механизма BDE (Borland Database Engine). BDE представляет собой совокупность динамических библиотек и драйверов, обеспечивающих доступ к данным. Процессор BDE должен устанавливаться на всех компьютерах, на которых выполняются Delphi – приложения, осуществляющие работу с БД. Приложение через BDE передает запросы к базе данных, а обратно получает требуемые данные. Все таблицы БД составлены в формате  Microsoft Access. Таблицы являются достаточно развитыми и удобными для создания БД. Можно отметить следующие их достоинства:

  1.  большое количество типов полей для представления данных различных типов;
  2.  поддержка целостности данных;
  3.  организация проверки вводимых данных;


РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

Минимальные системные требования:

  1.  Процессор 400 MHz
  2.  ОС Microsoft Windows 98, 2000, XP, 2003
  3.  Оперативная память: 128 Mb
  4.  VGA монитор
  5.  Устройство манипулирования

Файлы для работы:

Project2.exe – запускаемый файл программы.

В папке /Debug содержатся файлы базы данных для работы программы.


РУКОВОДСТВО ПРОГРАММИСТА

Программа разработана в среде Embarcedero RAD Studio XE2.

В состав разработанной системы входят файлы: Project2.dpr, Unit1.pasUnit14.pas

Фрагменты исходного кода

unit Unit2;

interface

uses

 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Data.Win.ADODB, Vcl.Grids,

 Vcl.DBGrids, Vcl.StdCtrls, Vcl.ExtCtrls, Vcl.DBCtrls;

type

 TForm2 = class(TForm)

   Label1: TLabel;

   ADOConnection1: TADOConnection;

   ADOQuery1: TADOQuery;

   DataSource1: TDataSource;

   Button1: TButton;

   ADOQuery1FIO: TWideStringField;

   ADOQuery1kurs: TWideStringField;

   ADOQuery1name_fak: TWideStringField;

   ADOQuery1namber_room: TWideStringField;

   ADOQuery1name_spec: TWideStringField;

   ADOQuery1obshag_name: TWideStringField;

   DBGrid1: TDBGrid;

   DBNavigator1: TDBNavigator;

   Button3: TButton;

   ADOTable1: TADOTable;

   ADOQuery1id_stud: TAutoIncField;

   Button2: TButton;

   procedure FormClose(Sender: TObject; var Action: TCloseAction);

   procedure Button1Click(Sender: TObject);

   procedure Button3Click(Sender: TObject);

   procedure FormCreate(Sender: TObject);

   procedure Button2Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form2: TForm2;

 metka_delete: integer;

implementation

{$R *.dfm}

uses Unit1,Unit3,Unit4,Unit5,Unit6, Unit7, Unit9,Unit11,Unit13;

procedure TForm2.Button1Click(Sender: TObject);

begin

Form2.Hide;

Form3.Show;

end;

procedure TForm2.Button2Click(Sender: TObject);

begin

Form2.Hide;

Form5.Show;

end;

procedure TForm2.Button3Click(Sender: TObject);

begin

if ADOQuery1.RecordCount<>0 then begin

metka_delete:=strtoint(ADOQuery1.Fields.FieldByName('id_stud').AsString);

if not ADOTable1.Locate('id_stud',metka_delete,[loCaseInsensitive]) then begin

MessageBox(Application.Handle, PChar('Выберете запись.'), PChar('Редактор студентов'), MB_ICONINFORMATION + MB_OK);

exit;

end else begin

ADOTAble1.Delete;

ADOTAble1.Close;

ADOTAble1.Open;

Form2.ADOConnection1.Connected:=False;

Form2.ADOConnection1.Connected:=True;

Form2.ADOQuery1.Active:=False;

Form2.ADOQuery1.Active:=True;

Form2.ADOTable1.Active:=False;

Form2.ADOTable1.Active:=True;

Form3.ADOQuery1.Active:=False;

Form3.ADOQuery2.Active:=False;

Form3.ADOQuery1.Active:=True;

Form3.ADOQuery2.Active:=True;

Form3.ADOTable1.Active:=False;

Form3.ADOTable1.Active:=True;

Form4.ADOQuery1.Active:=False;

Form4.ADOQuery1.Active:=True;

Form4.ADOQuery2.Active:=False;

Form4.ADOQuery2.Active:=True;

Form4.ADOQuery3.Active:=False;

Form4.ADOQuery3.Active:=True;

Form4.ADOQuery4.Active:=False;

Form4.ADOQuery4.Active:=True;

Form4.ADOQuery5.Active:=False;

Form4.ADOQuery5.Active:=True;

Form5.ADOTable1.Active:=False;

Form5.ADOTable1.Active:=True;

Form5.ADOTable2.Active:=False;

Form5.ADOTable2.Active:=True;

Form5.ADOQuery1.Active:=False;

Form5.ADOQuery1.Active:=True;

Form5.ADOQuery2.Active:=False;

Form5.ADOQuery2.Active:=True;

Form5.ADOQuery3.Active:=False;

Form5.ADOQuery3.Active:=True;

Form5.ADOQuery4.Active:=False;

Form5.ADOQuery4.Active:=True;

Form5.ADOQuery5.Active:=False;

Form5.ADOQuery5.Active:=True;

Form5.ADOQuery6.Active:=False;

Form5.ADOQuery6.Active:=True;

Form5.ADOQuery7.Active:=False;

Form5.ADOQuery7.Active:=True;

Form6.ADOQuery1.Active:=False;

Form6.ADOQuery1.Active:=True;

Form6.ADOQuery2.Active:=False;

Form6.ADOQuery2.Active:=True;

Form6.ADOQuery3.Active:=False;

Form6.ADOQuery3.Active:=True;

Form6.ADOQuery4.Active:=False;

Form6.ADOQuery4.Active:=True;

Form6.ADOQuery5.Active:=False;

Form6.ADOQuery5.Active:=True;

Form6.ADOTable1.Active:=False;

Form6.ADOTable1.Active:=True;

Form7.ADOTable1.Active:=False;

Form7.ADOTable1.Active:=True;

Form9.ADOTable1.Active:=False;

Form9.ADOTable1.Active:=True;

Form11.ADOTable1.Active:=False;

Form11.ADOTable1.Active:=True;

Form11.ADOTable2.Active:=False;

Form11.ADOTable2.Active:=True;

Form13.ADOTable1.Active:=False;

Form13.ADOTable1.Active:=True;

Form13.ADOTable2.Active:=False;

Form13.ADOTable2.Active:=True;

ADOTAble1.Active:=True;

ADOTAble1.Open;

MessageBox(Application.Handle, PChar('Запись удалена.'), PChar('Редактор студентов'), MB_ICONINFORMATION + MB_OK);

end;

end;

end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Form1.Show;

end;

procedure TForm2.FormCreate(Sender: TObject);

begin

ADOTAble1.Open;

end;

end.

unit Unit3;

interface

uses

 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.DBCtrls, Data.DB,

 Data.Win.ADODB;

type

 TForm3 = class(TForm)

   Edit1: TEdit;

   Label1: TLabel;

   Label2: TLabel;

   Label3: TLabel;

   Label4: TLabel;

   Label5: TLabel;

   Button1: TButton;

   ADOQuery1: TADOQuery;

   DBLookupComboBox2: TDBLookupComboBox;

   DBLookupComboBox3: TDBLookupComboBox;

   DataSource1: TDataSource;

   ADOQuery2: TADOQuery;

   DataSource2: TDataSource;

   ComboBox1: TComboBox;

   ADOTable1: TADOTable;

   Button2: TButton;

   procedure FormClose(Sender: TObject; var Action: TCloseAction);

   procedure DBLookupComboBox2Click(Sender: TObject);

   procedure Button1Click(Sender: TObject);

   procedure FormCreate(Sender: TObject);

   procedure Button2Click(Sender: TObject);

 private

   { Private declarations }

 public

   { Public declarations }

 end;

var

 Form3: TForm3;

implementation

{$R *.dfm}

uses Unit2,Unit4;

procedure TForm3.Button1Click(Sender: TObject);

begin

if (Edit1.Text<>'') and (ComboBox1.Text<>'') and (DBLookUpComboBox2.KeyValue<>Null) and (DBLookUpComboBox3.KeyValue<>Null) then

begin

ADOTable1.Open;

ADOTable1.Insert;

ADOTable1.Fields.FieldByName('FIO').AsString:=Edit1.Text;

ADOTable1.Fields.FieldByName('Kurs').AsString:=ComboBox1.Text;

ADOTable1.Fields.FieldByName('id_fak').AsString:=DBLookUpComboBox2.KeyValue;

ADOTable1.Fields.FieldByName('id_spec').AsString:=DBLookUpComboBox3.KeyValue;

ADOTable1.Post;

end else MessageBox(Application.Handle, PChar('Заполните предложенные поля.'), PChar('Расселение студентов'), MB_ICONINFORMATION + MB_OK);

Form4.Show;

Form3.Hide;

end;

procedure TForm3.Button2Click(Sender: TObject);

begin

Edit1.Text:='';

ComboBox1.Text:='';

DBLookUpComboBox2.KeyValue := NULL;

DBLookUpComboBox3.KeyValue := NULL;

Form3.Hide;

Form2.Visible:=True;

end;

procedure TForm3.DBLookupComboBox2Click(Sender: TObject);

begin

ADOQuery2.Active:=False;

ADOQuery2.Parameters[0].Value:=strtoint(DBLookupComboBox2.KeyValue);

ADOQuery2.Active:=True;

end;

procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction);

begin

Form2.Show;

end;

procedure TForm3.FormCreate(Sender: TObject);

begin

ADOQuery1.Active:=True;

ADOQuery2.Active:=True;

ADOTable1.Active:=True;

end;

end.


ЗАКЛЮЧЕНИЕ

В данной курсовой работе была разработана программа для работы с базой данных в соответствии с заданием.

Комплект документации, состоящий из «Руководства пользователя» и «Руководства программиста», позволяют ознакомиться с описанием основных частей программы, а также понять принцип работы. Программа является конечным продуктом, готовым для использования.


СПИСОК ЛИТЕРАТУРЫ

  1.  Хомоненко А.Д. , Гофман В.Э., Работа с базами данных в DELPHI (3-е издание), Санкт - Петербург, 2005
  2.  Дарахвелидзе П. Г., Марков Е. П. Программирование в Delphi 7. – СПб.: БХВ-Петербург, 2004.


 

А также другие работы, которые могут Вас заинтересовать

57613. Велика Вітчизняна війна (1941-1945 рр.) – складова Другої світової війни 54.5 KB
  Мета: познайомити учнів з подіями Великої Вітчизняної війни політикою загарбників на окупованих українських територіях діяльністю руху Опору на території України; вдосконалювати навички роботи з картою...
57614. ВЕРБАЛІЗАЦІЯ СТРАХУ В СУЧАСНІЙ АНГЛІЙСЬКІЙ МОВІ 322.5 KB
  Мовні засоби вираження емоції страху, а також об’єкти, які викликають у людини цю емоцію. Новизна та вибір предмета дослідження обумовлюються відсутністю детального аналізу мовних засобів, які використовуються автором у художньому тексті для вираження мовлення персонажів, які перебувають у стані страху.
57615. КИРИЛЛО – МЕФОДИЕВСКОЕ БРАТСТВО 80.5 KB
  Цели урока: ознакомить учащихся с деятельностью первой украинской политической нелегальной организацией - Кирилло-Мефодиевским братством; провести исследование программных документов и общественно-политической деятельности Кирилло-Мефодиевского братства...
57616. Галицко-Волынское княжество во времена Даниила Галицкого 85.5 KB
  ЦЕЛЬ: сформировать представление о Галицко-Волынском княжестве как наследнике традиций Киевской Руси показать роль Даниила Галицкого в процессе создания государства охарактеризовать основы внутренний и внешней политики...
57617. Державотворчі процеси у 1994-2009 р 138.5 KB
  Мета: розкрити зміст перетворень в 1994-2009 р., сформувати політичну позицію щодо оцінки президентства Л.Д.Кучми, В.А.Ющенка, діяльності Верховної Ради, Кабінету Міністрів; перемогу демократичних сил,радикальні зміни у суспільстві; виховувати в дусі патріотизму, толерантності.
57618. Географічні назви в історичній науці. Давні словяни 42.5 KB
  При дослідженні минувщини вчені часто знаходять різні назви. Інші з цих назв назви народів вони називаються етнонімами. Вчення про географічні назви іменується топонімією від грецьких слів топос...
57619. КООПЕРАЦІЯ, КОЛЕКТИВІ3АЦІЯ, ГОЛОДОМОР В УКРАІНІ У 1932-33 РОКАХ 247.09 KB
  Мета - розкрити причини та наслідки політики радянського уряду щодо селянства в України у 20—их поч.30-их років; познайомити з фотодокументами, спогадами очевидців, що підтверджують існування голодомору в Україні у 1932-33 роках...
57620. ГОЛОДОМОР 1932-1933 РР. – ГЕНОЦИД УКРАЇНСЬКОГО НАРОДУ 120.5 KB
  Навчальна. Ознайомити учнів з історичними передумовами виникнення Голодомору, з політикою більшовиків проти українського народу, охарактеризувати наслідки Голодомору. Довести злочинний характер сталінізму. Простежити висвітлення Голодомору в українській літературі та фольклорі.
57621. Особливості розвитку культури у другій половині 19ст. Освіта. Наука 156 KB
  Мета: виявити загальні закономірності та особливості розвитку культури в Україні у другій половині 19ст. Грушевського в розвиток української науки; виховувати шанобливе ставлення учнів до визначних діячів української культури другої половини 19ст.