База данных "Магазин косметики"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
?о запроса на основании операции проекции
2.6.1.8 Расчет сложности запроса
Расчет сложности оптимизированного запроса приведен ниже.
, (2.59)
, (2.60) где - операция селекции с .
, (2.61)
,
,
, (2.62)
.
Так как операция селекции не изменяет структуру таблицы, то
,
.
, (2.63)
, (2.64) где - операция селекции с .
, (2.65)
,
,
, (2.66)
.
Так как операция селекции не изменяет структуру таблицы, то
,
.
, (2.67)
где - результат естественного соединения таблиц;
- таблицы, участвующие в соединении;
- операция естественного соединения.
, (2.68)
(2.69)
,
,
,
.
, (2.70)
, (2.71)
где - число блоков, записанных в таблице ;
- длина одной записи таблицы в блоках;
- длина одной записи таблицы в байтах;
- размер одного блока.
Очевидно, что
, (2.72)
- объем в байтах поля ;
,
,
.
.
.
.
, (2.73)
, (2.74)
, (2.75)
где - операция селекции с .
, (2.76)
,
,
, (2.77)
.
Так как операция селекции не изменяет структуру таблицы, то
,
.
, (2.78)
,
,
,
,
, (2.79)
.
Очевидно, что
, (2.80)
,
,
,
.
.
.
, (2.81)
, (2.82)
, (2.83) где - операция селекции с .
, (2.84)
,
,
, (2.85)
.
Так как операция селекции не изменяет структуру таблицы, то
,
.
, (2.86)
,
,
,
,
, (2.87)
.
Очевидно, что
, (2.37)
,
,
,
.
.
.
, (2.88)
, (2.89)
, (2.90) где - операция селекции с .
, (2.91)
,
,
, (2.92)
.
Так как операция селекции не изменяет структуру таблицы, то
,
.
, (2.93)
,
,
,
,
, (2.94)
.
Очевидно, что
, (2.95)
,
,
,
.
.
.
, (2.96)
, (2.97)
, (2.44) где - операция селекции с .
, (2.98)
,
,
, (2.99)
.
Так как операция селекции не изменяет структуру таблицы, то
,
.
, (2.100)
,
,
,
,
, (2.101)
.
Очевидно, что
, (2.102)
,
,
,
.
.
.
Так как операция проекции располагается последней, то ее не учитывают при расчете сложности запроса.
Окончательно имеем:
, (2.103)
.
Заключение
В ходе выполнения курсовой работы была достигнута цель работы - проектирование базы данных магазина косметики.
Для достижения цели был решен ряд задач: составление описания предметной области; составление словаря понятий и терминов; построение исходной модели (ER-диаграммы) базы данных; определение функциональных зависимостей; синтез схемы базы данных на основании функциональных зависимостей; построение оптимизированной концептуальной модели; построение запросов на выборку.
Библиографический список
1.Атре, Ш., Структурный подход к организации баз данных. / [Текст] : Атре, Ш. - М.: Финансы и статистика, 1983. - 320 с.
.Бойко, В.В., Проектирование баз данных информационных систем. / [Текст] : Бойко, В.В., Савинков, В.М., - М.: Финансы и статистика, 1989. - 351 с.
. Гарсия-Молина, Гектор, Ульман, Джеффри, Д., Уидом, Дженнифер Системы баз данных. Полный курс. : Пер. с англ. - М. : Издательский дом Вильямс, 2003. - 188 с. : ил.
. Дейт, К., Руководство по реляционной СУБД DB2. / [Текст] : Дейт, К. - М.: Финансы и статистика, 1988. - 320 с.
. Джексон, Г., Проектирование реляционных баз данных для использования с микроЭВМ. / [Текст] : Джексон, Г., -М.: Мир, 1991. - 252 с.
. Кириллов, В.В., Структуризованный язык запросов (SQL). / [Текст] : Кириллов, В.В., - СПб.: ИТМО, 1994. - 80 с.
. Мартин, Дж., Планирование развития автоматизированных систем. / [Текст] : Мартин, Дж., - М.: Финансы и статистика, 1984. - 196 с.
.Мейер, М., Теория реляционных баз данных. / [Текст] : Мейер, М.,- М.: Мир, 1987. - 608 с.
.Тиори, Т., Проектирование структур баз данных. / [Текст] : Тиори, Т., Фрай, Дж., В 2 кн., - М.: Мир, 1985. Кн. 1. - 287 с.: Кн. 2. - 320 с.
Приложение А
А.1Код, связанный с событием Click кнопок След. и Пред.
* Next IF NOT EOF() EOF()BOTTOM
ЕNDIF .Refresh .Buttons
* Previous IF NOT BOF() - 1BОF()TOP
ЕNDIF.Refresh: .Buttons
А.2Код, связанный с событием Click кнопки Поиск
LastRecordNo = RECNO( )KEY LABEL ENTERKEYBOARD CHR(23)KEY LABEL RIGHTMOUSE KEYBOARD CHR(23)NOMODIFY NOAPPENDKEY LABEL ENTER KEY LABEL RIGHTMOUSELASTKEY ( ) = 27 (THISFORM.LastRecordNo).Refresh .Buttons
А.3Код, связанный с событием Click кнопки Изменить
Editing = .T..EnableAll .ButtonsOff.cmdSave.Enabled = .T..cmdCanc.Enabled = .T..txtCustCode.Enabled = .F. .txtLastName.SetFocus
А.4Код, связанный с событием Click кнопки Добавить
THISFORM.LastRecordNo = RECNO( ) .Adding = .T.BLANK.Refresh = .T..Enableall .Buttonsoff.cmdSave.Enabled = .T..cmdCanc.Enabled = .T. .txtCustCode.SetFocus
А.5Код, связанный с событием Click кнопки Сохранить
=TableUpdate ( ) =.F. .Adding=.F. .DisableAll.ButtonsOn .Buttons .cmdSave.Enabled=.F. .cmdCanc.Enabled=.F. .cmdNext.SetFocus
А.6Код, связанный с событием Click кнопки Отмена
=TableRevert ( ) THISFORM.Adding (THISFORM.LastRecordNo )=.F..Adding=.F..Refresh.DisableAll.ButtonsOn.Buttons.cmdSave.Enabled=.F..cmdCanc.Enabled=.F..cmdNext.SetFocus
А.7Код, связанный с событием Click кнопки Удалить
IF MESSAGEBOX ("Удалить эту запись", 4 + 32 + 256 ) = 6
DELETE NEXT 1DELETED ONTOP.Refresh
А.8Код, связанный с событием Click кнопки Выход
RELEASE THISFORM
Описание формы