База данных комплектующих персональных компьютеров

Автор работы: Пользователь скрыл имя, 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

Работа состоит из  1 файл

Курсачччччч.docx

— 106.37 Кб (Скачать документ)

СУБД  – это совокупность языковых и  программных средств, предназначенных  для создания и использования  БД.

По характеру  использования СУБД разделяют на персональные и многопользовательские.

Персональная  СУБД обеспечивает возможность создания локальных БД (расположены на одном  и том же компьютере, что и работающее с ними приложения). К персональным СУБД относятся Paradox, dBase, FoxPro, Access и другие.

Многопользовательские СУБД позволяют создавать информационные системы, функционирующие в компьютерных сетях. К ним относятся Oracle, Informix, InterBase и другие.

В зависимости  от вида организации данных различают  следующие модели БД:

▪ Иерархическую

▪ Сетевую

▪ Реляционную

▪ Объектно-ориентированную

В иерархической  БД данные представляются в виде древовидной  структуры.

В сетевой  БД данные организуются в виде графа.

Реляционная БД получила название от англ. слова Relation – отношение. Данные представлены в  виде таблицы.

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

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

Система Delphi не является СУБД, но обладает ее возможностями. Предоставляемые Delphi средства обеспечивают создание и использование различных  видов БД, а также разработку приложений для работы практически с любыми БД. Delphi не имеет своего формата таблиц (языка описания данных), но использует форматы таблиц других СУБД (dBase, Paradox, InterBase).

 

1.2.2 Таблицы баз данных

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

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

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

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

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

▪ создание (определение структуры);

▪ изменение  структуры (реструктуризация);

▪ переименование;

▪ удаление.

При создании таблицы задается структура и  имя таблицы.

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

При переименовании таблица получает новое имя, в  результате чего новое имя также  получают все ее файлы. Для этого  используются соответствующие программы (утилиты), предназначенные для работы с БД, например, Database Desktop или Data Pump.

При удалении таблицы с диска удаляются  все ее файлы.

Для работы с БД предназначены специальные  средства Delphi, которые можно разделить  на два вида:

Инструментальные  средства (специальные программы  и пакеты, обеспечивающие обслуживание БД вне разрабатываемых приложений).

Компоненты, предназначенные для создания приложений, осуществляющих операции с БД.

Инструментальные  средства:

▪ Borland Database Engine (BDE) – процессор баз данных, который представляет собой набор  библиотек, предназначенных для  организации доступа к БД из приложений Delphi.

▪ Database Desktop – программа создания и редактирования таблиц и другие.

Компоненты, связанные с БД, делятся на визуальные (используются для создания интерфейсной части приложения, видны в работающих программах) и невизуальные (предназначены  для организации доступа к  данным, содержащимся в таблицах, не видны в работающих программах). Эти компоненты находятся на страницах Data Access, Data Controls, Midas, Decision Cube, QReport, InterBase палитры компонентов.

 

1.2.3 Набор данных

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

Компонент Table представляет собой набор данных, который в некоторый момент времени  может быть связан с одной таблицей БД. Связь между таблицей и компонентом Table устанавливается через его  свойство TableName, который определяет имя таблицы.

Для выполнения операций с НД используются два способа доступа к данным:

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

реляционный – основан на обработке группы записей. При реляционном способе  доступа для задания операций используются средства языка структурированных  запросов – SQL (Structured Query Language).

 

1.2.4 Режимы наборов данных

Наборы  данных могут находиться в различных  режимах. Текущий режим НД определяет свойство State. Оно доступно для чтения во время выполнения приложения и  может быть использовано только для  текущего режима. Для перевода данных в тот или иной режим применяются  специальные методы.

НД может  находиться в одном из следующих  режимов:

▪ dsInactive – НД закрыт и неактивен, доступ к его данным невозможен.

▪ dsBrowse – режим просмотра, в котором  осуществляется перемещение по записям  НД и просмотр данных.

▪ dsEdit –  редактирование текущей записи.

▪ dsInsert – вставка новой записи.

▪ dsSetKey – поиск записи, удовлетворяющей  заданному критерию.

▪ dsCalcField – выполняется расчет вычисляемых  полей.

▪ dsFilter – выполняется фильтрация записей.

 

1.2.5 Перемещение по записям набора данных

Перемещение по НД заключается в управлении указателем текущей записи (курсором). Этот указатель  определяет запись, с которой будут  выполняться какие-либо операции.

Перед перемещением указателя текущей записи НД автоматически  переводится в режим просмотра.

Для перемещения  указателя текущей записи используются методы:

Процедура First – установка курсора на первую запись НД;

Процедура Next – на следующую запись;

Процедура Last – на последнюю запись;

Процедура Prior – на предыдущую запись;

Функция MoveBy (n:integer): integer – перемещение на число запсией, указанных в параметре n

n>0 –  перемещение вперед;

n=, =150 or Cena нижней границы AND значение < верхней границы" (вместо операций сравнения < > могут указываться и операции =).

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

Для фильтрации записей по диапазону компонент Table имеет следующие методы:

ApplyRange –  активизирует фильтр (включение  фильтра);

CancelRange –  деактивизирует фильтр (выключение  фильтра);

SetRangeStart – устанавливает нижнюю границу  диапазона;

SetRangeEnd –  устанавливает верхнюю границу  диапазона;

EditRangeStart – изменяет предварительно заданную  нижнюю границу диапазона;

EditRangeEnd – изменяет предварительно заданную верхнюю границу диапазона;

SetRange –  имеет тот же эффект, что и  последовательное выполнение методов  SetRangeStart, SetRangeEnd и ApplyRange. Процедура  позволяет одновременно задать  границы диапазона и выполнить  фильтрацию.

Свойство KeyExclusive типа Boolean определяет, как учитывается  заданное граничное значение при  анализе записей. Если KeyExclusive = False (по умолчанию), то записи, у которых  значения полей фильтрации совпадают  с границами диапазона, включаются в состав НД, а если KeyExclusive = True, то такие записи в НД не попадают. Свойство KeyExclusive действует отдельно для нижней и верхней границы. Значение этого  свойства должно устанавливаться после  вызова методов SetRangeStart, SetRangeEnd, EditRangeStart и EditRangeEnd.

Пример:

Table1.IndexName: ='indCena'; //установка текущего индекса  indCena (создан по полю Cena таблицы Tovar.db)

Table1. SetRangeStart;

Table1. KeyExclusive: = True;

Table1.FieldByName('Cena').AsFloat: =100.5;

Записи, содержащие в поле Cena значение 100,5, не входят в отфильтрованный НД (т. к. KeyExclusive = True). Фильтрация по диапазону подчиняется условию Cena >100,5. Если бы KeyExclusive = False, то условие фильтрации выглядело бы по-другому (Cena >=100,5).

Когда одна из границ диапазона не задана, то диапазон открыт, то есть нижняя граница становится равной минимально возможному, а верхняя  граница – максимально возможному значению этого поля.

 

1.2.6 Модификация набора данных

Модификация НД представляет собой редактирование, добавление и удаление его записей. Модифицируемость НД зависит от различных условий. Можно разрешить или запретить изменение НД с помощью соответствующих свойств. Управлять возможностью изменения НД Table можно с помощью свойства ReadOnly типа Boolean. Если значение этого свойства = True, то изменения записей запрещаются. По умолчанию свойство ReadOnly имеет значение False, и НД можно модифицировать.

Для проверки, можно ли изменять НД, предназначено  свойство CanModify типа Boolean. Если это свойство имеет значение True, то НД изменять можно, а если False, то изменения в НД запрещены.

 

1.2.7 Редактирование записей

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

▪ перевести  НД в режим редактирования;

▪ изменить значения полей записи;

▪ подтвердить  сделанные изменения или отказаться от них, в результате чего НД снова  перейдет в режим просмотра.

НД переводится  в режим редактирования вызовом  метода Edit, например Table1.Edit – редактирование текущей записи НД Table1.

Редактирование  записей осуществляется для модифицируемого  НД, поэтому перед вызовом метода Edit следует выполнять проверку на возможность редактирования записи (например, путем анализа свойства CanModify).

Пример: If Table1.CanModify then Table1.Edit;

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

procedure TForm1.Button1Click(Sender: TObject);

begin

if not Table1.CanModify then

begin

Beep;

MessageDlg ('Редактирование запрещено!', mtInformation, [mbOk], 0);

Exit;

end;

Table1.Edit;

end;

Здесь переход  в режим редактирования осуществляется при нажатии кнопки Button, которая  может иметь название «Редактировать»  или «Edit». Перед переводом в  этот режим выполняется проверка, можно ли изменять записи НД Table1, и  если нет, то процедура выдает соответствующее  сообщение и завершается.

Блокировка  попыток пользователя изменить немодифицируемый НД должна выполняться также при  добавлении и удалении записей.

При выполнении метода Edit непосредственно перед  переводом НД в режим редактирования возникает событие BeforeEdit, которое  можно использовать для проверки возможности перехода в этот режим. Например, при попытке пользователя редактировать запись ему может  быть предложено подтвердить свои действия:

Информация о работе База данных комплектующих персональных компьютеров