Шпаргалка по "Информатике"

Автор работы: Пользователь скрыл имя, 03 Декабря 2012 в 16:56, шпаргалка

Описание работы

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

Файлы: 1 файл

шпоры.doc

— 433.00 Кб (Скачать файл)

I   41. Переменные памяти в Visual FoxPro 5.0, их сходство и отличия то переменных, используемых в других языках процедурного программирования. Примеры использования переменных памяти.

Переменные памяти в  структурированных программах

Как и во всех процедурных  языках,  в Visual FoxPro 5.0 имеются

как   средства  для   обеспечения   автономности   обозначений   в

подпрограммах, так и  для создания переменных, «видимых»  из

всех   модулей:       переменные   могут   быть   определены   как

глобальные   или   как   локальные.   А   также   региональные,

внутренние и системные.

PUBLIC, PRIVATE memory variables

а) Глобальные (PUBLIC) переменные: переменные, видимые из 
подпрограмм. По умолчанию все переменные, образуемые в 
диалоге (при работе в командном окне), трактуются в Visual 
FoxPro 5.0 как глобальные. Переменные, которые по смыслу 
решаемой задачи целесообразно сделать общими для всех 
программных модулей, должны быть объявлены как глобальные 
командой

PUBLIC <список переменных через запятые>

б) Локальные (PRIVATE)пepeменныe: переменные, которые 
могут быть использованы Головной программой и 
подпрограммами автономно. Значения локальных переменных, 
присвоенные в Головной программе, после входа в 
подпрограмму не сохраняются. Обозначения этих переменных 
могут быть использованы в подпрограмме для своих целей, 
совершенно отличных от целей использования в Головной 
программе (вплоть до различий в типе переменных!). После 
возвращения из подпрограммы переменные будут иметь те же 
значения, что и имели непосредственно перед обращением к 
подпрограмме.

По умолчанию все переменные в программах (кроме объявленных как глобальные) трактуются как локальные, и специальную команду для их объявления вводить не нужно. Такую команду следует использовать только для «переобъявления» глобальных переменных на локальные: PRIVATE<список обозначений через запятые>

в) Региональные    (REGIONAL)    переменные:    переменные, 
подобны локальным и объявляются с помощью команды: 
REGIONAL <список обозначений через запятые>

перед командой помещается директива # REGION. После директивы необходимо указать номер региона (от 0 до 31), в котором действуют переменные перечисленные в списке. В регионе с другим номером та же переменная может иметь другое значение.

г) Внутренние (LOCAL) переменные: переменные действуют 
только в пределах процедуры или функции, в которых были 
созданы. К ним нельзя обратиться из программы или функции ни 
более высокого, ни более низкого уровня. Объявляются 
внутренние переменные командой:

LOCAL <список обозначений через запятые>

д) Системные переменные: переменные, встроенные в Visual 
FoxPro 5.0, и их имена всегда начинаются со знака подчеркивания. 
В этих переменных, как правило, содержаться значения различных 
установок, таких как параметры страницы при печати и т.п. 
Системные переменные загружаются в память при запуске Visual

  Fox.Pro 5.0, в процессе работы их значения могут изменяться, ь будут, сохранены при последующих запусках СУБД. 

,   I   20. Нарушения ссылочной целостности. Стратегии ,       поддержания ссылочной целостности.

Операции, могущие нарушить ссылочную  целостность

i       Ссылочная целостность может нарушиться в результате операций, i       изменяющих состояние базы данных. Таких операций три -(       вставка, обновление и удаление кортежей в отношениях. Т.к. в i       определении ссылочной целостности участвуют два отношения -i       родительское и дочернее, а в каждом из них возможны три

операции - вставка, обновление, удаление, то нужно рассмотреть [      шесть различных вариантов.

Для родительского отношения:

  1. Вставка кортежа в родительском отношении. При вставке кортежа в родительское отношение возникает новое значение потенциального ключа. Т.к. допустимо существование кортежей в родительском отношении, на которые нет ссылок из дочернего отношения, то вставка кортежей в родительское отношение не нарушает ссылочной целостности.
  2. Обновление кортежа в родительском отношении. При обновлении кортежа в родительском отношении может измениться значение потенциального ключа. Если есть кортежи в дочернем отношении, ссылающиеся на обновляемый кортеж, то значения их внешних ключей станут некорректными. Обновление кортежа в родительском отношении может привести к нарушению ссылочной целостности, если это обновление затрагивает значение потенциального ключа.
  3. Удаление кортежа в родительском отношении. При удалении кортежа в родительском отношении удаляется значение потенциального ключа. Если есть кортежи в дочернем отношении, ссылающиеся на удаляемый кортеж, то значения их внешних ключей станут некорректными. Удаление кортежей в родительском отношении может привести к нарушению ссылочной целостности. Для дочернего отношения:

 

  1. Вставка кортежа в дочернее отношение. Нельзя вставить кортеж в дочернее отношение, если вставляемое значение внешнего ключа некорректно. Вставка кортежа в дочернее отношение привести к нарушению ссылочной целостности.
  2. Обновление кортежа в дочернем отношении. При обновлении кортежа в дочернем отношении можно попытаться некорректно изменить значение внешнего ключа. Обновление кортежа в дочернем отношении может привести к нарушению ссылочной целостности.
  3. Удаление кортежа в дочернем отношении. При удалении кортежа в дочернем отношении ссылочная целостность не нарушается.

Таким образом, ссылочная целостность в принципе может быть нарушена при выполнении одной из четырех операций:

  • Обновление кортежа в родительском отношении.
  • Удаление кортежа в родительском отношении. Вставка кортежа в дочернее отношение.

- Обновление кортежа в дочернем отношении. 
Стратегии поддержания ссылочной целостности 
Существуют две основные стратегии поддержания ссылочной 
целостности:

RESTRICT (ОГРАНИЧИТЬ)- не разрешать выполнение операции, приводящей к нарушению ссылочной целостности. Это самая простая стратегия, требующая только проверки, имеются ли кортежи в дочернем отношении, связанные с некоторым кортежем в родительском отношении.

CASCADE (КАСКАДИРОВАТЬ)- разрешить выполнение требуемой операции, но внести при этом необходимые поправки в других отношениях так, чтобы не допустить нарушения ссылочной целостности и сохранить все имеющиеся связи. Изменение начинается в родительском отношении и каскадно выполняется в дочернем отношении. В реализации этой стратегии имеется одна тонкость, заключающаяся в том, что дочернее отношение само может быть родительским для некоторого третьего отношения. При этом может дополнительно потребоваться выполнение какой-либо стратегии и для этой связи и т.д. Если при этом какая-либо из каскадных операций (любого уровня) не может быть выполнена, то необходимо отказаться от первоначальной операции и вернуть базу данных в исходное состояние. Это самая сложная стратегия, но она хороша тем, что при этом не нарушается связь между кортежами родительского и дочернего отношений.

Эти стратегии  являются стандартными и присутствуют во всех СУБД, в которых имеется  поддержка ссылочной целостности. Можно рассмотреть дополнительные стратегии поддержания ссылочной целостности:

SET NULL (УСТАНОВИТЬ В NULL) - разрешить выполнение требуемой операции, но все возникающие некорректные значения внешних ключей изменять на null-значения. Эта стратегия имеет два недостатка. Во-первых, для нее требуется допустить использование null-значений. Во-вторых, кортежи дочернего отношения теряют всякую связь с кортежами родительского отношения. Установить, с каким кортежем родительского отношения были связаны измененные кортежи дочернего отношения, после выполнения операции уже нельзя. SET DEFAULT (УСТАНОВИТЬ ПО УМОЛЧАНИЮ) - разрешить выполнение требуемой операции, но все возникающие некорректные значения внешних ключей изменять на некоторое значение, принятое по умолчанию. Достоинство этой стратегии по сравнению с предыдущей в том, что она позволяет не пользоваться null-значеними. Недостатки заключаются в следующем. Во-первых, в родительском отношении должен быть некий кортеж, потенциальный ключ которого принят как значение по умолчанию для внешних ключей. В качестве такого "кортежа по умолчанию" обычно принимают специальный кортеж, заполненный нулевыми значениями (не null-значениями!). Этот кортеж нельзя удалять из родительского отношения, и в этом кортеже нельзя изменять значение потенциального ключа. Таким образом, не все кортежи родительского отношения становятся равнозначными, поэтому приходится прилагать дополнительные усилия для отслеживания этой неравнозначности. Это плата за отказ от использования null-значений. Во-вторых, как и в предыдущем случае, кортежи дочернего отношения теряют всякую связь с кортежами родительского отношения. Установить, с каким кортежем родительского отношения были связаны измененные кортежи дочернего отношения, после выполнения операции уже нельзя. В некоторых реализация СУБД рассматривается еще одна стратегия поддержания ссылочной целостности: IGNORE (ИГНОРИРОВАТЬ) - выполнять операции, не обращая внимания на нарушения ссылочной целостности. 

9. Теория реляционных  баз данных. Основные понятия. Теория реляционных баз данных

В основе РМД  лежит понятие теоретико-множественного отношения.

Отношение представляет собой двумерную таблицу, содержащую некоторые данные.

Сущность - это объект любой природы, данные о котором хранятся в БД.

Атрибут - это свойство характеризующее сущность. Пусть дано Di, D2,..., Dn -n-множеств, Тогда отношение R-это множество упорядоченных кортежей <dbd2,..,dn,> d;e D;, где dj -атрибут, Dj-домен. Арностью отношений (степенью) является общее количество атрибутов в отношении.

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

Домен - множество всех возможных значений какого-либо атрибута отношения.

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

Подмножество  атрибутов Р отношения R называется потенциальным ключом (возможным ключом), если выполняются следующие два условия:

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

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

  1. исключение дублирования значений ключевых атрибутов.
  2. упорядочивание кортежей.
  3. ускорение работы с кортежами отношений.
  4. организация связывания таблиц.

Пусть в отношении R1 имеется неключевой атрибут А, значение которого является значением ключевого атрибута В другого отношения R2, тогда говорят что атрибут А отношения R1 является внешним ключом.

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

  1. все записи должны иметь одинаковую структуру.
  2. каждая запись в таблице должна быть уникальна.

знач-е Эл-тов  одного столбца должны ппинадл-ть одному и тому же домену. 4.    имена столбцов должны быть уникальными.

*

12. Реляционная алгебра. Выборка (селекция) и проекция.

Реляционная алгебра состоит из операторов, объединенных в две группы:

  1. Классические операции над множествами: объединение, вычитание, пересечение, декартово произведение.
  2. Специальные реляционные операции: выборка (селекция, ограничения), проекция, деление, операция переименования. Выборка - возвращает отношение, содержащее все кортежи, удовлетворяющие одному условию.

Проекция - возвращает отношение, содержащее все кортежи

исходного отношения  после исключения из него некоторых

атрибутов

Специальные реляционные операции:

1. Выборка

Пусть имеется  отношение r(R), A e R; a e dom(A)    r where A=a Выбрать из отношения г все кортежи, удовлетворяющие

условию А=а.

ОА=а(г)

Операция выборки обладает двумя свойствами:

  1. Коммутативность: аА=ав=ь(г))= ав=ь(ов=ь(г))
  2. Дистрибутивность относительно трех классических операций : оА=а(г V s)= aA=a(r)V oA=a(s)   ,где V = U,

Проекция

В результате проекции мы получаем множество атрибутов Определение: Пусть r(R) схема, а х- подмножество из R, тогда проекция на х из г обозначается лх(г)

Свойства  проекции:

1. Коммутатация с выборкой, если атрибуты для выбора 
находятся среди атрибутов множества, на которое 
осуществляется проекция

Если А е х, х -подмножество R и r(R), то

ЛхА=а(г))= ОА=а(Лх(г))

2. Дистрибутивность проекции с объединением 
лх(г Us)= ях(г)и rcx(s)

 

 

Тип поля выбирается из списка типов  полей (



19.     Понятие     целостности     и     непротиворечивости     БД -Ограничения       целостности.       Понятие       потенциального альтернативного  ключей.  Первичные  и  внешние     ключи

Целостная часть  реляционной модели фиксируется  базовыми требованиями целостности, которые  должны выполнятся в любой РСУБД. Целостность БД связана с обеспечением непротиворечивости, согласованности и достоверности информации, хранящейся в БД. Это обеспечивается набором правил целостности. Выделяют четыре категории правил:

1. Целостная   сущность.   Любой   кортеж   любого   отношения

должен быть отличен  от любого другого кортежа этого  отношения (каждое отношение должно иметь первичный ключ).

2. Целостность доменов.    Каждый атрибут должен понимать

Информация о работе Шпаргалка по "Информатике"