Автор работы: Пользователь скрыл имя, 27 Марта 2012 в 11:11, курсовая работа
Также необходимо провести исследования удобства пользования данным программным продуктом на этапе реализации промежуточных результатов, по результатам которых выявить слабые места в программе и попытаться их устранить.
Таким образом, в своей работе я попытаюсь сделать как можно более удобный и понятный для пользователя интерфейс, который позволит ему быстро разобраться с различными возможностями и функциями данной программы, то есть, как с ней работать.
ВВЕДЕНИЕ…………………………………………………………………..……3
1 Основы разработки баз данных ………….……………………………....…….4
1.1 Требования к программе …………………………………………..…….……4
1.2 База данных……….……………………………………………………….…....9
1.2.1 Что такое база данных?…………………….…………………………....…..9
1.2.2 Таблицы баз данных………………………………………….……..…...…10
1.2.3 Наборы данных……………………………………………………………...12
1.2.4 Режимы наборов данных ………………………………………………..…13
1.2.5 Перемещение по записям набора данных…………...…………….……..13
1.2.6 Модификация набора данных……………………………………...….….15
1.2.7 Редактирование записей………………………………………………......16
1.2.8 Добавление записей………………………………………………….……17
1.2.9 Удаление записей…………………………………………………….……18
1.2.10 Организация связей между таблицами………………………………….20
1.3 Историческая справка о Delphi……………………………………….…….23
2 Разработка программы с описанием……………………………………….....26
2.1 Создание обучающей части……………………………………………...….26
ЗАКЛЮЧЕНИЕ……….……………………………………………...………….29
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ……………………………30
ПРИЛОЖЕНИЯ A……………………………………………………………….31
procedure TForm1.Table1BeforeEdit (DataSet: TDataSet);
begin
if MessageDlg ('Выполнить редактирование?',
mtConfirmation, [mbYes, mbNo], 0) mrYes then Abort;
end;
После выполнения метода Edit вызывается обработчик события AfterEdit. Для проверки, вносились ли изменения в запись, можно проанализировать свойство Modified типа Boolean. Если свойство имеет значение True, то было изменено значение как минимум одного поля текущей записи.
После ввода информации сделанные изменения должны быть или подтверждены, или отменены.
Метод Post сохраняет изменения записи в таблице БД (например, Table1.Post), снимает блокировку записи и переводит НД в режим просмотра (Table1.Browse).
Перед его
выполнением автоматически
При работе с компонентом DBGrid изменения закрепляются при переходе к другой записи или нажатии клавиши [Enter], а в компоненте DBNavigator можно нажать кнопку Post Edit (Утвердить изменения).
Метод Cancel отменяет изменения, выполненные в текущей записи (например, Table1.Cancel), и возвращает НД в режим просмотра. При выполнении метода Cancel вызываются обработчики событий BeforeCancel и AfterCancel.
При работе с сеткой DBGrid изменения отменяются нажатием клавиши [Esc], а в компоненте DBNavigator – нажатием кнопки Cancel Edit (Отменить изменения).
1.2.8 Добавление записей
Добавлять записи можно только к модифицируемому НД. Для добавления записи нужно выполнить следующие действия:
▪ перевести НД в режим вставки;
▪ задать значения полей текущей записи;
▪ подтвердить
сделанные изменения или
Метод Insert
переводит НД в режим вставки
и добавляет к нему новую пустую
запись. Новая запись вставляется
перед текущей записью. При необходимости
перед вызовом метода Insert необходимо
выполнить перемещение текущего
указателя на ту запись НД, перед
которой вставляется новая
Метод Append вставляет новую запись в конец НД.
Для компонента DBGrid новая запись добавляется к НД при нажатии клавиши [Insert] или при переходе на последнюю запись. Если на форме находится компонент DBNavigator, то новая запись добавляется при нажатии кнопки Insert Record (Вставить запись).
1.2.9 Удаление записей
Удаление текущей записи выполняет метод Delete, который работает только с модифицируемым НД. В случае успешного удаления записи текущей становится следующая запись, если же удалялась последняя запись, то курсор перемещается на предыдущую запись, которая после удаления становится последней.
При удалении записи генерируются события BeforeDelete и AfterDelete.
Если при удалении записи требуется подтверждение удаления, то можно написать следующий обработчик события OnClick для кнопки Button «Удалить запись»:
procedure TForm1.Button1Click(Sender: TObject);
begin
if MessageDlg ('Удалить запись?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
Table1.Delete;
end;
Удаление
нескольких последовательно расположенных
записей имеет особенность, связанную
с тем, что при вызове метода Delete
в цикле по перебору удаляемых
записей не нужно вызывать методы,
перемещающие указатель текущей
записи. после удаления текущей записи
указатель автоматически
procedure TForm1.Button1Click(Sender: TObject);
var n:longint;
begin
Table1.Last;
For n:= Table1.RecordCount downto 1 do Table1.Delete;
end;
В примере перебор записей выполняется с конца НД. После удаления текущей записи указатель снова оказывается на последней записи.
Перед удалением записи часто предварительно выполняется поиск записи, удовлетворяющей заданным условиям. Для отбора группы удаляемых записей используется фильтрация. Метод Delete позволяет удалить записи, видимые в НД. Поэтому с помощью фильтрации можно временно оставить в НД записи, которые подлежат удалению, а после удаления фильтрацию отключить.
1.2.10 Организация связей между таблицами
В частном случае БД может состоять из одной таблицы. Однако, обычно реляционная БД (позволяет обрабатывать различные типы информации совместно) состоит из взаимосвязанных таблиц. Организация связи (отношений) между таблицами называется связыванием или соединением таблиц.
Связи между
таблицами обычно устанавливаются
при разработке приложения. Связывать
можно две или несколько
Связь между таблицами определяет отношение подчиненности, при котором одна таблица является главной (родительской, или мастером), а другая – подчиненной (дочерней, или детальной). Саму связь (отношение) называют связь «главный – подчиненный», «мастер – детальный».
Для связывания таблиц используются поля связи («совпадающие поля»). Поля связи обязательно должны быть индексированными. В подчиненной таблице для связи с главной таблицей состав полей индекса должен полностью или частично совпадать с составом полей индекса главной таблицы. Значения полей связи в главной и подчиненной таблицах должны совпадать (то есть в этих таблицах должны быть одинаковые поля).
Существуют следующие виды связи:
▪ отношение «один-к-одному»;
▪ отношение «один-ко-многим»;
▪ отношение «много-к-одному»;
▪ отношение «много-ко-многим».
Отношение «один-к-одному» означает, что одной записи в главной таблице соответствует одна запись в подчиненной таблице. Такое отношение используется при разбиении таблицы с большим числом полей на несколько таблиц.
Отношение
«один-ко-многим» означает, что одной
записи главной таблицы в подчиненной
таблице может соответствовать
несколько записей, в частном
случае ни одной. Этот вид отношения
встречается наиболее часто. При
перемещении в главной таблице
текущего указателя на какую-либо запись
в подчиненной таблице
Отношение «много-к-одному» отличается от отношения «один-ко-многим» только направлением. Если на отношение «один-ко-многим» посмотреть со стороны подчиненной таблицы, а не главной, то оно превращается в отношение «много-к-одному».
Отношение
«много-ко-многим» имеет место, когда
одной записи главной таблице
может соответствовать
Работа со связанными таблицами имеет следующие особенности:
▪ При изменении (редактировании) поля связи может нарушиться связь между записями двух таблиц, поэтому при редактировании поля связи записи главной таблицы нужно соответственно изменять и значения поля связи всех подчиненных записей.
▪ При
удалении записи главной таблицы
нужно удалять и
▪ При добавлении записи в подчиненную таблицу значение поля связи формируется автоматически по значению поля связи главной таблицы.
При разработке приложения программист должен обеспечить следующее:
▪ организация связи между таблицами;
▪ контроль (запрет) редактирования полей связи;
▪ организация каскадного удаления записей.
PHP/FI
PHP появился как развитие другого продукта, PHP/FI. PHP/FI был создан Rasmus'ом Lerdorf'ом в 1995 году, сначала как простой набор Perl-скриптов для отслеживания доступа к его собственному online-резюме. Он назвал этот набор скриптов 'Personal Contents Page Tools'. Поскольку требовалось б́ольшая функциональность, Rasmus написал расширенную реализацию C, которая могла работать с базами данных (БД), и дал пользователям возможность разрабатывать простые динамические Web-приложения. Rasmus решил опубликовать исходный код PHP/FI для широкого доступа, чтобы любой мог использовать, расширять и улучшать его.
PHP/FI, Personal Contents Page / Forms Interpreter, имел некоторую
основную функциональность того
PHP, который известен нам теперь.
Он имел Perl-подобные переменные,
автоматическую интерпретацию
В 1997 году PHP/FI 2.0, вторая версия C-реализации,
имел несколько тысяч
PHP/FI 2.0 был официально выпущен только в ноябре 1997 года, после того как просуществовал в основном в виде beta-релизов. Вскоре после этого этого появились первые alphа PHP 3.0.
PHP 3.0 бал первой версией, похожей
на сегодняшний PHP. Его создали
Andi Gutmans и Zeev Suraski в 1997 году как
полностью переписанный язык, поскольку
они нашли его PHP/FI 2.0 недостаточно
мощным для разработки их
Одной из сильных сторон PHP 3.0 была
возможность его расширения. Кроме
того, предоставляя конечным
Другой ключевой особенностью PHP 3.0 стала
поддержка объектно-ориентированного
синтаксиса и намного более мощный и цельный
синтаксис языка.
Язык был назван PHP: Hypertext Preprocessor.
В конце 1998 года PHP стал базой
для десятков тысяч
PHP 3.0 был официально выпущен в июне 1998 года после примерно 9 месяцев публичного тестирования.
Зимой 1998 года, вскоре после официальной
публикации PHP 3.0, Andi Gutmans и Zeev Suraski начали
переработку ядра PHP с целью повысить
производительность при работе
сложных приложений и улучшить
модульность кодовой базы PHP. Такие
приложения были возможны в
PHP 3.0, но PHP 3.0 не разрабатывался для
эффективного обслуживания
Новая машина, 'Zend Engine' (по именам
создателей - Zeev и Andi), успешно решила
эти задачи и появилась
PHP 4 является в данный момент
последней версией PHP. Уже началась
работа по модификации и
Сегодня PHP используется сотнями
тысяч разработчиков (
Команда создателей PHP состоит из
десятков разработчиков, а
2 Разработка программы с описанием
2.1 Создание обучающей части
На рисунке 1 показано главное окно программы. В нём отображаются поля: “Number”- номер студента, “Family” - фамилия, “Name” – имя, “Otchestvo” - отчество студента, ”Adres”- адрес проживания, ”Telefon” – контактный телефон, по которому можно связать с учащимся, “Gruppa”- шифр и номер группы обучающегося, “Date_R” – дата рождения студента, “Specialnost’” - специальность студента. Любые изменения, производимые в этом окне, будут сохранены автоматически, но только тогда, когда курсор после необходимых изменений будет переставлен на любую другую ячейку.
Рисунок 1- Главное окно программы
Для работы с таблицей, а именно добавление, редактирование и удаление записей, присутствует специальная панель называемая DBNavigator, которая показана на рисунке 2.
Рисунок 2 – Панель DBNavigator
Данная кнопка нужна для добавления новой записи о студенте, где прописывается его личная информация.
С помощью этой кнопки можно удалять запись о любом студенте.
Эта кнопка переводит курсор в начало списка.
Эта кнопка переводит курсов в конец списка.
Эта кнопка переводит курсов на позицию назад.
Эта кнопка переводит курсор на позицию вперед.
В базе данных также присутствует «поиск». Под «поиском» понимается поиск только одного человека в базе данных с возможностью изменения данных о нём. Чтобы воспользоваться поиском, необходимо нажать на кнопку «поиск», после чего появятся 2 окошка где нужно вписать амилию студент, а также можно провести поиск по группам. В появившемся окне (рис. 3) в поле ввода вводится фамилия, после этих действий отобразиться будет выведена вся информация о студенте. Если в поле ввода фамилия были введены не полностью, то программа не найдет никого.
Информация о работе База данных комплектующих персональных компьютеров