Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры(экз.БД)1.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
345 Кб
Скачать

2. Взаимосвязи в моделях и реляцион.Подход к построению модели.

Сущ-ет 3типа логич.моделей: иерархическая, сете­вая и реляционная. 1)Иерархическая – модель этого типа жестко структурированная, т.е.взаимосвязь между объектами внутри модели подчинена строгому ранжиру. Подчин-е объектов разделено на уровни. На I ур.представлен 1глав.объект, ктр под­чин-ся объекты II уровня. Причем объект I ур.не может напрямую упр-ть объектом III уровня. Уп­р-е объектом III уровня возможно только через объ­ект II уровня. Также запрещены взаимосвязи на одном уровне. 2)Сетевая - более демократична. В сет.модели отсутству­ет понятие главного и подчинен.объекта. Один и тот же объект может выступать как главный и как подчиненный, т.е.иметь любое кол-во взаимосвязей. Здесь допустимы связи на одном уровне. 3)Реляционная - объекты представлены в виде таблиц (двумерных массивов). Причем таблицей могут отображ-ся не только объекты, но и связи. Кажд.таблица состоит из произ­вольного кол-ва строк и произвольного кол-ва столб­цов. Обязательным усл-ем построения реляцион.модели явл-ся наличие в каждой таблице первичного ключа. Этот вид модели имеет наибольшее распростр-е при построении БД.

Взаимосвязь выражает связь между 2мя множ-вами данных (таблицами). Сущ-ет 3типа взаимосвязи: 1)«один-к-одно­му» - одной записи в одной таблице соотв-ет одна запись в др.таблице. #кажд.гражданин имеет только 1паспорт. Взаимосвязь жесткая, т.е.ни в той, ни в др.таблице не может быть несвязанной записи. Если наложить огранич-е, что один клиент может сделать только 1 заказ, то будем также иметь взаимосвязь «один-к-одному». 2)«один-ко-многим» - одной записи в одной таблице соотв-ет неск-ко записей в др.таблице. Наиболее распространен.взаимосвязь при создании реляционных БД. Кажд.клиент может купить неск-ко автомобилей, но кажд.автомобиль принадлежит только одному человеку. 3)«многие-ко-многим» - неск-ким записям в одной таблице соотв-ет неск-ко записей в др.таблице. Продавцы-тезки обслуживают покупателей тоже тезок. Д/реляцион.БД будем иметь таблицы «Клиент» и «Продавец». При взаимосвязи «многие-ко-многим» одна из таблиц обяз-но будет избыточной (не оптимальной). Д/уда­ления избыточной i-и взаимосвязь между таблицами «Клиент» и «Продавец» следует отобразить в виде таблицы пере­крестных связей. Таблица перекрестных связей содер­жит только ключи. Знач-я ключей в таблице перекрестных свя­зей будут повтор-ся, но записи в таблице «Продавец» будут уни­кальными.

10. Созд-е прогр-х ф-в: модул-ть пр-м.

При работе с БД бывает необх-мо при каждом нов.запуске представлять на экране одну и ту же БД в различных вариантах. Д/облегчения этого процесса использ-ся програм.файлы. Они созд-ся с помощью встроенного текст.редактора FoxPro. Текст.редактор запуск-ся из окна Command или из Глав.меню. а)из окна Command: MODIFY COMMAND. Ключ.слово Command д/создания нов.програм.файла с расширением .prg и д/открытия сущ-щего файла. редактир-я внутри главного окна FoxPro. б)Д/создания нов.програм.файла надо: file®new ®выбрать расшир-е .prg. Д/открытия уже сущ-щего програм.файла надо: file®open®выбрать имя нужного програм.файла. Выполнить програм.файл можно либо командой Do, либо с помощью команды глав.меню Program-Do. Модульность пр-м. Програм.продукт вкл-ет в себя внешние и внутрен.процедуры, ктр оформл-ся как отдельные модули. Модульное построение програм.продукта позволяет повысить его нагляд-ть и унифицир-ть часто повтор-ся операции, сокращает время напис-я и отладки пр-ам. При выполн-и програмкодов, если FoxPro встречает обращ-е к пр-ме (модулю), то он ищет текст модуля в след.послед-ти: 1)в тек.процедуре; 2)в процедурном файле; 3)снизу вверх в старших процедурах; 4)на диске в виде отдельной пр-мы.