База данных

Автор работы: Пользователь скрыл имя, 24 Мая 2010 в 18:26, Не определен

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

Работа проведенная в Делфи
Само задание:
Учет движения продуктов по складу горюче-смазочных материалов. Составить базу данных, полями которой являются: шифр продукта, наименование продукта, объём, признак прибытие/убытие, дата, наименование (фамилия) потребителя/поставщика номер счёта потребителя/поставщика, адрес, телефон и др. Вывести динамику поступления-убытия каждого конкретного продукта, а также общий объём движения продуктов на складе ГСМ (сколько прибыло и убыло за текущий месяц).

Файлы: 1 файл

бд.doc

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

    Объект  Table позволяет приложению работать с таблицей, но для отображения данных на экране необходимо использовать компоненту DBGrid.

    Основные  свойства объекта DBGrid: Name - имя объекта используемое в программе (является указателем, заданным в соответствии с шаблоном компоненты); DataSource – имя источника данных, посредством которого осуществляется связь объекта DBGrid с объектом Table (выбирается из списка).

    Объект  DBGrid позволяет не только отображать данные, но и управлять ими (перемещаться по записям, добавлять и редактировать записи и т.д.). Однако ряд действий эффективней выполнять с использованием объекта DBNavigator.

    Основные  свойства объекта DBNavigator: Name – имя объекта (указатель); DataSource – имя источника данных, посредством которого осуществляется управление компонентой Table, выбирается из списка (рис. 6).

      
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

                 Рис. 6 Свойства компонент Table и DataSource 

 

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

    
 
 
 
 
 
 
 
 

         

         

                        Рис. 7. Взаимодействие компонент приложения 

     После размещения на форме всех необходимых компонент и настройки их свойств получим макет приложения, показанный на рис. 8.  
 
 

             Рис. 8 Макет формы приложения для работы с таблицей stud  

    После компиляции и запуска приложения возможна работа с исходной однотабличной БД – ввод, сохранение, удаление и редактирование данных, перемещение по записям таблицы. Вводимая в поля таблицы информация должна соответствовать указанному при создании таблицы типу поля и не превышать длину поля (в этом случае ввод символов за границей длины поля будет невозможен).

      

  
 
 
 
 
 
 
 
 
 

Рис. 9 Внешний вид работающего  приложения  

Структура проекта приложения  

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

    1. проектные  файлы (приводятся имена, используемые  по умолчанию для первого созданного  в среде проекта):

    Project1 .dof - проектный файл компоновки, описывающий все файлы, входящие в проект;

    Project1.dpr - файл, отвечающий за запуск приложения;

    Project1.res - файл ресурсов (курсоры, пиктограммы и т.д.).

    2. файлы,  относящиеся к формам приложения (имена, используемые по умолчанию  Delphi для первой созданной формы):

     Unit1 .pas - исходные тексты программы, содержащие обработчики событий класса TForm1;

     Unit1 .dfm - файл с описанием формы, её визуальных объектов и их свойств.

    3. Файлы  данных: файлы таблиц, индексов и  т.д. 

    При использовании формата dBase for Windows файлы таблиц имеют расширение *.dbf, а файлы индексов *.mdx.  

 

Пример  реализации БД о студентах  

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

    А. Определим структуру  базы и введём условные обозначения:

Zach – номер зачётной книжки, целое 6 знаков;

Group – шифр группы, символьное, 4 символа;

Fam – фамилия символьное, 20 символов;

Nam – имя символьное, 20 символов;

Par – отчество символьное, 20 символов;

Year_b – год рождения, целое, 4 знака;

Sex – пол символьное, 1 символ;

Pred – предмет символьное, 10 символов;

Oz – оценка целое, 4 целых знака, 2 десятичных.

    В. Разработаем таблицу  с соответствующей  структурой. Для этого необходимо запустить утилиту Database Desktop, выбрать опции меню File->New и заполнить соответствующие ячейки диалога задания структуры в соответствии с выбранной структурой (пункт А, рис. 2). После этого необходимо сохранить таблицу на диске в своём рабочем каталоге.

      С. Создадим Windows-приложение для работы с данными. Для этого необходимо запустить среду Borland Delphi, выбрать опции меню File->New->Application, после чего откроется новый проект приложения. Далее следует перенести на макет формы приложения компоненты Table, DataSource, DBGrid, DBNavigator и настроить их свойства в соответствии с табл. 2.  

     

Таблица 2. Свойства компонент приложения

Компонента  Свойство  Значение 
Table Name Table1
TableName Stud.dbf
DataSource Name DataSource1
DataSet Table1
DBGrid Name DBGrid1
DataSource DataSource1
DBNavigator Name DBNavigator1
DataSource DataSource1

     

    Внешний вид макета формы приложения должен соответствовать рис. 8.

    После этого необходимо откомпилировать  проект и осуществить ввод данных в таблицу (рис. 9).  
 
 

                  ЛАБОРАТОРНАЯ  РАБОТА №2

СОЗДАНИЕ WINDOWS-ПРИЛОЖЕНИЯ ДЛЯ  РАБОТЫ С БАЗОЙ  ДАННЫХ. ГЕНЕРАЦИЯ  ОТЧЕТОВ.

 

  Обработка информации однотабличной базы данных

    Помимо  хранения, редактирования, обновления и анализа данных в базе данных (БД), на практике часто возникает задача осуществления разного рода расчётов и вычислений с использованием хранящейся в БД информации. Например, для базы данных, хранящей информацию о студентах учебного заведения (см. методические указания к лабораторной работе №1) может возникнуть задача расчёта средней оценки студента по конкретному предмету или расчёта успеваемости группы. Поскольку требуемые расчёты могут быть довольно сложные, необходимо использование программных пакетов разработки приложений, объединяющих в себе как удобные средства доступа к БД различных форматов, так и гибкий язык программирования. С этой точки зрения наиболее удобным инструментом является среда визуальной разработки Windows-приложений Borland Delphi, обеспечивающая доступ к информации БД практически всех существующих форматов и возможность её обработки, используя язык Delphi.

    Визуальная  навигация и управление данными  в Borland Delphi производится с помощью компонент просмотра (DBGrid) и управления (DBNavigator), которые позволяют перемещаться по записям, удалять, добавлять или модифицировать их и т.д.

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

Next - перемещение указателя на следующую запись;

Prior - перемещение указателя на предыдущую запись;

First - перемещение указателя на первую запись таблицы;

Last - перемещение указателя на последнюю запись таблицы.

    Например, если создан объект Table, свойством Name которого является значение Table1, то оператор

    Table1.First;

    переместит  указатель на первую запись. Перечисленные  методы позволяют последовательно  перемещать указатель записи по таблице. Для определения последней записи таблицы используется ее свойство Eof, которое принимает значение true, когда указатель установлен на последней записи.

    Фрагмент  программы  

     

Tabl1.Open;

Table1.First;//перемещение на начало таблицы         

While not Table1.EOF do//проверка на конец файла

  Table1.Next;//перемещение на следующую запись

Table1.Close;

 

  

    показывает, как организовать последовательный просмотр всех записей таблицы.

    Для программного управления записями таблицы  в класс TTable инкапсулированы следующие методы управления:

    Delete - удаление текущей записи с позиционированием указателя на следующую запись;

    Insert - добавление пустой записи в таблицу;

    Edit – перевод таблицы в режим редактирования;

    Post – сохранение изменений в таблице.

    Например, фрагмент программы

 

  

    Table1.Last;

    Table1.Delete;

 

  позволяет удалить последнюю запись таблицы.

    Перечисленные методы позволяют оперировать с  целыми записями таблицы.

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

    Для создания подобных объектов нужно выполнить  следующую последовательность действий:

    -         нажать правой клавишей мыши на соответствующем объекте Table;

    -         в выведенном меню выбрать опцию Fields Editor, в результате чего на экране появится диалог редактирования полей;

    - нажать правой клавишей мыши  в области диалога редактирования полей;

    - в выведенном меню выбрать  опцию Add Fields, в результате чего на экране появится соответствующий диалог;

    - добавить необходимые поля выбором  кнопки Ok. В результате диалог редактирования полей должен содержать список созданных объектов, свойства которых отражены в окне Object Inspector. Каждый из созданных объектов, указывающих на соответствующие поля, имеет свойство Name.

    Например, для таблицы с именем stud.dbf, содержащей фамилии студентов и их оценки с именами полей FAM и OZ, для полей FAM и OZ будут созданы объекты с именами     Table1[‘FAM ‘]и Table1[‘OZ’].

    Созданные объекты позволяют оперировать с таблицей на уровне полей.

    Фрагмент  программы

 

  

Var

  Soz : real;//переменная для средней оценки

  N   : integer;    //счётчик записей

begin

  Table1.First;

  While not Table1.EOF do begin

      soz:=soz+Table1[‘OZ’].Value;//накопление суммы

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