на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Создание базы данных для организации
p align="left">InterBase дает возможность использовать функции, определяемые пользователем (User Defined Function, UDF), в которых могут реализовываться функциональности, отсутствующие в стандартных встроенных функциях InterBase (вычисление максимума, минимума, среднего значения, преобразование типов и приведение букв к заглавным). Например, в UDF можно реализовать извлечение из значения даты номера дня, года; определение длины символьного значения; усечение пробелов; разные математические алгоритмы и т. п. Функция пишется на любом алгоритмическом языке, позволяющем разрабатывать DLL (библиотеки динамического вызова), например, на Object Pascal.

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

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

InterBase был разработан в начале 80-х годов группой разработчиков из американской корпорации DEC. В дальнейшем разработка данного продукта велась независимыми компаниями InterBase Software и впоследствии слившейся с ней Ashton-Tate. Borland приобрела права на InterBase у Ashton-Tate после слияния с нею.

InterBase активно используется в государственном и военном секторах США, что, видимо, и стало преградой для его продвижения в Россию. Интерес к этому серверу возрос только в последнее время в связи с включением его локальной (а начиная с Delphi 3 и 4-пользовательской) версии в состав Delphi Client/Server Suite и Delphi Enterprise. Внимание разработчиков БД InterBase привлек, во-первых, потому, что это «родной» продукт Borland (а средства разработки приложений этой компании давно зарекомендовали себя с положительной стороны), во-вторых, потому, что InterBase весьма прост в установке, настройке и администрировании по сравнению с другими SQL-серверами, и в-третьих, потому, что он обладает прекрасными функциональными возможностями.

Firebird выбран мной в качестве сервера из-за того, что он бесплатен и более функционален, чем Interbase, а также хорошо совместим с новыми операционными системами Windows Vista и Server 2008. Используемая мною версия это наиболее стабильная на данный момент - 2.0.3.

2.4 Построение даталогической модели

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

Целью данной работы является автоматизация обработки данных по клиентам с целью упрощения работы персонала с клиентами. При покупке или выдаче на прокат товара клиенту выдаётся чек. Количество товара на складе соответственно уменьшается. Также в видеопрокате существуют скидки постоянным клиентам в зависимости от количества покупок (сделок).

В процессе реализации задачи при разработке структуры для хранения данных, первым объектом выступают информация о товаре (дисках или кассетах) и клиентах. В нашем случае БД будет состоять из 3 таблиц. В таблице MOVIE будут содержаться сведения о фильмах (штрих-код, количество дисков, название, режиссер и жанр). В таблице CLIENT будут храниться все нужные сведения о клиентах - с указанием полных паспортных данных. Третья таблица DEAL будет содержать сведения о сделках (дата сделки, сумма с учетом скидки (если она есть) и т.д.) Таким образом, таблица DEAL будет центральной. Она должна будет иметь уникальной поле, которое будет однозначно определять каждую сделка. В дальнейшем по этому полю мы создадим первичный ключ, чтобы СУБД могла быстро найти нужную запись. Каждой записи в таблице MOVIE будет соответствовать произвольное количество записей в таблице DEAL (такая связь в терминологии БД называется связью один ко многим), т. е. одно из её полей будет содержать уникальный идентификатор фильма. В таблице DEAL будет также ссылка на уникальный идентификатор клиента из таблицы CLIENT. При появлении очередной записи в таблице DEAL должно меняться значение поля KOL (количество) в таблице MOVIE.

Таблица Фильмы (MOVIE):

ID

Целый

INTEGER

Уникальный идентификатор фильма. По этому полю создается первичный ключ.

(штрих код диска)

NAME_FILM

Строковый

VARCHAR 50

Название фильма (индексное поле)

DIRECTOR

Строковый

VARCHAR 50

Режиссер

GANR

Строковый

VARCHAR 10

Жанр (набор фиксированных значений: комедия, триллер, боевик и т. д.) Индексное поле

KOL

Целый

INTEGER

Количество на складе

MONEY

Целый

INTEGER

Цена

DESCRIPTION

Строковый

VARCHAR 250

Краткое описание фильма

Таблица Клиенты(CLIENT):

ID_C

Целый

INTEGER

Уникальный идентификатор клиента (первичный ключ)

FIO

Строковый

VARCHAR 50

ФИО (индексное поле)

PASPORT

Строковый

VARCHAR 150

Паспортные данные

Таблица Заказы(DEAL):

ID_D

Целый

INTEGER

Уникальный идентификатор

(первичный ключ)

ID_M

Целый

INTEGER

Код фильма из поля ID таблицы MOVIE

CL_ID

Целый

INTEGER

Код клиента из поля ID_C таблицы CLIENT

DEN

Вещественный

NUMERIC

Цена с учетом скидки

D_D

Дата

DATE

Дата составления. По этому полю нужно создать индекс для сортировки.

VZVR

Символьный

CHAR 1

Код возврата. По умолчанию `N'

Таблица Log

WHEN

Дата

TIMESTAMP

Дата редактирования(текущая дата)

USER

Строковый

VARCHAR(20)

Пользователь

ACTION

Строковый

CHAR(3)

Действие, выполняемое пользователем

3. Разработка приложения

3.1 Выбор среды реализации

Среда разработки Borland Delphi.

Приложение-клиент разрабатывается при помощи программных средств Borland Delphi, используя набор компонентов Interbase Express (IBX). Эти компоненты используют функции Intebase API, т.е. обращаются к серверу непосредственно. VCL-библиотека классов среды проектирования Delphi предоставляет ряд классов, позволяющих быстро и эффективно разрабатывать различные приложения баз данных.

Эти классы представлены следующими группами:

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

o доступ через машину баз данных BDE (Borland Database Engine), предоставляющую доступ через ODBC-драйверы или через внутренние драйверы машины баз данных BDE (компоненты страницы BDE-палитры инструментов);

o доступ через ADO-объекты (ActiveX Data Objects), в основе которого лежит применение технологии OLE DB (компоненты страницы ADO);

o доступ к локальному или удаленному SQL-серверу InterBase (компоненты страницы InterBase);

o доступ посредством легковесных драйверов dbExpress;

o доступ к БД при многозвенной архитектуре (компоненты страницы DataSnap);

· визуальные компоненты, реализующие интерфейс пользователя;

· компоненты для связи источников данных с визуальными компонентами, предоставляющими интерфейс пользователя;

· компоненты для визуального проектирования отчетов.

Компоненты для доступа к серверу InterBase:

· TIBDatabase -- предназначен для подключения к базе данных. Основные методы: Open, Close.

· TIBTransaction -- предназначен для явного управления транзакцией. Основные методы: StartTransaction, Commit, Rollback, CommitRetaining, RollbackRetaining.

· TIBTable -- аналог стандартного TTable. Компонент предназначен для получения данных из одной таблицы или представления базы данных. Основное свойство -- TableName. Основные методы: Open, Close. Набор данных, полученных при помощи TIBTable, является редактируемым, если речь идет о таблице базы данных или обновляемом представлении. Компонент совместим с визуальными компонентами.

· TIBQuery -- аналог стандартного TQuery. Компонент предназначен для получения данных на основе SQL-запроса. Этот набор данных не всегда будет редактируемым, зачастую необходимо использовать дополнительный компонент TIBUpdateSQL, чтобы иметь возможность редактировать полученные сведения. Основное свойство -- SQL. Основные методы: Open, Close, ExecSQL. Компонент совместим с визуальными компонентами.

· TIBDataSet -- предназначен для получения и редактирования данных, является потомком стандартного класса TDataSet и полностью совместим со всеми визуальными компонентами. Основные методы: Prepare, Open, Close, Insert, Append, Edit, Delete, Refresh.

· TIBStoredProc -- предназначен для выполнения хранимых процедур и получения набора данных на основе результатов выполнения процедуры. Получаемый набор данных является нередактируемым. Компонент совместим с визуальными компонентами. Основное свойство -- StoredProcName. Основной метод -- ЕхесРгос.

· TIBUpdateSQL -- аналог TUpdateSQL. Используется в паре с TIBQuery и предназначен для создания модифицируемых наборов данных. Основные свойства: DeleteSQL, InsertSQL, ModifySQL и RefreshSQL.

· TIBSQL -- предназначен для выполнения SQL-запросов. В отличие от TIBQuery или TIBDataSet, TIBSQL не имеет локального буфера для набора данных и несовместим с визуальными компонентами.

· TIBDatabaseInfo -- позволяет получить системную информацию о некоторых свойствах базы данных, соединения и сервера. Например, UserNames -- список пользователей, подключенных к базе данных, PageSize -- размер страницы базы данных.

· TIBSQLMonitor -- предназначен для перехвата и отслеживания всех запросов, которые выполняют приложения, использующие IBX.

TIBEvents -- предназначен для получения пользовательских событий InterBase. Основное свойство -- Events. Основные методы: RegisterEvents, UnregisterEvents.

3.2 Особенности разработки приложения

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

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

В целом функциональная спецификация состоит из трех основных частей:

1. Описание внешней информационной среды по отношению к программному средству;

2. Определение функций ПС. Чаще всего такие функции рассматриваются на множестве состояний внешней информационной среды;

Страницы: 1, 2, 3, 4



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.