22606

Реляційне числення. Мова “Альфа”

Лекция

Математика и математический анализ

RANGE ОПД X GET WП.КД = Д3 RANGE ОПД X – оператор декларації ОПД – тип X – змінна. Перший варіант: RANGE Д X GET WОПД.колір = червоний RANGE ОПД Y GET W2П.

Украинкский

2013-08-04

58.5 KB

1 чел.

II.2. Реляційне числення. Мова “Альфа”

Реляційне числення Кодда є одним із найважливіших наріжних каменів теорії реляційних моделей баз даних. У СУБД, що існували до появи реляційного підходу, було багато засобів для обробки даних і формулювання запитів. Основою для їх розробки та впровадження виступали практичні потреби тої, чи іншої предметної області, або кількох областей. У дореляційну епоху не було створено теоретичного критерію стосовно повноти мовних засобів для формування запитів у межах певного класу мов. Ситуація у цьому розумінні видавалася досить складною: з одного боку множина запитів на основі природної мови (неформалізована область) і з іншого боку мовні засоби СУБД, тісно повязані з іноді досить складними структурами даних.

Алфавіт.

V1 = {a; r; P; };  V2 = {; ; ; ; };  V3 = {=; ; ; ; ; };  V4 = {[; ]; (; ); ,; :};

V = V1 V2 V3  V4;

Індекси – це слова виду ... (m - штук), m = 0,1,2,...

Константи – слова виду а... (m - штук), m = 0,1,2,...; позначення - am; a=a0;

Змінні – слова виду r... (m - штук), m = 0,1,2,...; позначення - rm;

Предикати (унарні)  – слова виду P... (m - штук), m = 0,1,2,...; позначення - Pm;

Зрізи – слова виду r...[...] (i та m - штук), і,m = 0,1,2,...; позначення – ri[m];

Далі з урахуванням раніш введених визначень та позначень специфікуємо наступні поняття:

Терми значень – слова виду Pi rj;

 Терми зєднань – слова виду    , або   , де , -- зрізи, - константа, - бінарний предикат (порівняння).

Приклади термів зєднань:

r1[3] r2[1];  r1[2] = a ;

Правильно побудовані формули (ППФ)

  1.  Всі терми значень і терми зєднань є ППФ. Всі їх змінні – вільні.
  2.  Якщо F – ППФ, то F – ППФ. Змінні залишаються вільними.
  3.  Якщо F1 і F2ППФ і їх спільні змінні вільні у кожній з формул, то F1  F2, F1  F2  ППФ. Змінні вільні у F1  F2, F1  F2, якщо вони вільні принаймні у одній формулі.
  4.  Якщо F – ППФ і r – вільна у ній змінна, то r(F), r(F) – ППФ; r – звязана змінна.
  5.  Інших ППФ немає.

Приклади ППФ:

P1r2  (r2[1]  r3[2])

r2 ((P1 r1  P2r2) (r[1] r[2]))

Безкванторна ППФ F називається правильно визначеною (ПВ) над змінною r, якщо виконуються такі умови:

  1.  r єдина змінна в F;
  2.  всі терми в F є термами значень;
  3.   входить в F тільки після , або відсутній.

Нехай  F -- ППФ ПВ над r, а G -- ППФ і має r як вільну змінну, але не має термів значень виду Pir, тоді будемо використовувати позначення:

r (F G) --- F (G)

r (F G) --- F (G)

ППФ W називається формулою з областю визначення (ФОВ), якщо виконуються вимоги:

  1.  W = U1  U2  ... Un  V, n1;
  2.  Ui ,i = 1,2,...,n – є ПВ формулою над змінною ri (i j   ri  rj)
  3.  V – або пуста, або ППФ, що задовольняє умовам:
  •  квантори входять у V тільки у вигляді F(G), або  F(G);
  •  кожна вільна змінна з V є вільною в одній з Ui ;
  •  у V немає термів значень з вільними змінними.

Приклади ФОВ:

У мові “Альфа” описуються властивості даних, які треба знайти.

Приклади.

  1.  Знайти всі відомості про всіх постачальників.

GET W(П.КП, П.прізвище, П.статус, П.місто)

GET W(П)

  1.  Знайти коди постачальників з статусом більше 20, що живуть в місті N

GET W(П.КП): П.статус > 20 Ù П.місто = ‘N’

GET W(П.КП, П.статус): П.місто = ‘N’ DOWN П.статус

GET W(1) – код постачальника з найбільшим статусом.

  1.  Знайти прізвища постачальників, що постачають деталь Д3.

RANGE ОПД X

GET W(П.прізвище): $X (X.КП = П.КП & X.КД = Д3)

RANGE ОПД X – оператор декларації, ОПД – тип, X – змінна.

Змінні, що входять під квантор, обов’язково декларуються.

  1.  Знайти прізвища постачальників, які постачають принаймні одну червону деталь.

Перший варіант:

RANGE Д X

GET W(ОПД.КП): $X (X.КД = ОПД.КД & X.колір = червоний)

RANGE ОПД Y

GET W2(П.прізвище): $Y (Y.КП = П.КП)

Другий варіант:

RANGE Д X

RANGE ОПД Y

GET W(П.прізвище): $X $Y (Y.КП = П.КП & X.КД = Y.КД & X.колір = червоний)

  1.  Знайти прізвища тих постачальників, які постачають принаймні одну деталь, яку постачає постачальник П5.

RANGE ОПД X

RANGE ОПД Y

GET W(П.прізвище): $X $Y (X.КП = П.КП & X.КД = Y.КД & Y.КП = П5)

Зауваження: В мові “Альфа” порядок однойменних кванторів несуттєвий, різних кванторів – суттєвий.

  1.  Знайти прізвища тих постачальників, які не постачають деталь Д1.

Від супротивного:

RANGE ОПД X

GET W(П.прізвище): Ø($X(X.КП = П.КП & X.КД = Д1))

Або:

GET W(П.прізвище): "X(X.КП ¹ П.КП Ú X.КД ¹ Д1)

  1.  Знайти прізвища постачальників, які постачають всі деталі.

RANGE Д X

RANGE ОПД Y

GET W(П.прізвище): "X $Y(Y.КП = П.КП & Y.КД = X.КД)

  1.  Знайти прізвища тих постачальників, що постачають принаймні всі ті деталі, що і Петренко.

RANGE ОПД X

RANGE ОПД X1

RANGE Д Y

RANGE П Z

GET W(П.прізвище): "Y ($X $Z (X.КП = Z.КП & X.КД = Y.КД & Z.прізвище = Петренко) Þ

$X1 (X1.КП = П.КП & X1.КД = Y.КД))

  1.  Знайти коди одержувачів, які не одержують жодної червоної деталі від постачальників з міста N.

RANGE П X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): Ø($Z $X $Y (X.місто = N & Y.колір = червоний & Z.КП = X.КП

& Z.КД = Y.КД & Z.КО = О.КО))

  1.  Знайти прізвища постачальників, які постачають одну і ту ж саму деталь всім одержувачам

RANGE О X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): $Y "X $Z (Z.КП = П.КП & Z.КД = Y.КД & Z.КО = X.КО)

  1.  Знайти коди одержувачів, потреби яких повністю задовольняє постачальник з кодом П7.

RANGE ОПД X

GET W(О.КО): "X (X.КО = О.КО Þ X.КП = П7)

  1.  Знайти коди деталей, які постачаються всім одержувачам з міста ‘N’.

RANGE ОПД X

RANGE О Y

GET W(Д.КД): "Y (Y.місто = ‘N’ Þ $X (X.КД = Д.КД & X.КО = Y.КО))

  1.  Знайти номери одержувачів, які використовують тільки ті деталі, що постачаються від поставника П7.

RANGE ОПД X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): "Y ($Z (Z.КД = Y.КД & Z.КО = О.КО) Þ $X(X.КД = Y.КД & X.КП = П7))

  1.  Знайти номери одержувачів, які використовують принаймні декілька деталей від постачальника П7

RANGE ОПД X

RANGE Д Y

RANGE ОПД Z

GET W(О.КО): "Y ($Z (Z.КД = Y.КД & Z.КО = О.КО) Þ $X(X.КД = Y.КД & X.КО = О.КО & X.КП = П7))

  1.  Змінити колір деталі Д6 на червоний.

HOLD W(Д.КД, Д.колір): Д.КД = Д6

W.колір = червоний

UPDATE W

HOLD – здійснюється пошук, але залишається вказівник на на тому місці, звідки дані отримані.

Також використовуються: DELETE W – вилучення даних, PUT W – внесення даних.

  1.  Знайти загальну кількість постачальників.

GET W(COUNT (П.КП))

COUNTпідраховує поля будь-яких типів.

Також використовуються: TOTAL, MAX, MIN, AVERAGE – використовуються лише по арифметичним полям.

  1.  Знайти коди постачальників з найбільшим статусом.

GET W(П.КП): TOP(1, П.статус)

Також використовується BOTTOM.

  1.  Для кожної деталі, що постачається, знайти її номер та загальний об’єм поставки.

GET W(ОПД, КД, iTOTAL(ОПД, КД, кількість))

Параметри iTOTAL в даному випадку  – ‘ОПД’ – реляція, в якій відбувається групування по атрибуту ‘КД’ і для кожної групи підраховується сума по атрибуту ‘кількість’.

Також використовуються: iCOUNT, iMAX, iMIN, iAVERAGE.

  1.  Знайти коди деталей, що постачаються більш ніж одним постачальником.

GET W(ОПД.КД):iCOUNT(ОПД, КД, КП) > 1


 

А также другие работы, которые могут Вас заинтересовать

78150. Направленность личности 306.5 KB
  Понятие потребности. Желание как форма направленности характеризуется осознанием не только своей потребности но и возможных путей её удовлетворения. Интерес Интерес специфическая форма проявления познавательной потребности человека.
78151. Образование как социокультурный феномен и движущая сила социально-экономического развития 88.88 KB
  Социокультурные тенденции оказывающее влияние на развитие образования науки культуры. Основные направления модернизации среднего специального и высшего образования. Две основные функции образования в обществе воспроизводство и развитие и соответствующие им модели образования.
78152. Развитие и воспитание личности 55.36 KB
  Структура учебной деятельности: учебнопознавательные мотивы цели задачи и учебные действия. Обучение направлено на развитие личности посредством организации усвоения обучающимися научных знаний и способов деятельности. Воспитательная функция реализуется в формировании у обучающихся ценностных ориентаций убеждений личностных качеств в процессе усвоения социальнокультурного опыта и формировании мотивов учебной деятельности которые во многом определяют ее успешность. Используется в практике профессиональной подготовки и рассчитан на то...
78153. Роль и психологические функции руководителя в системе управления 55.01 KB
  Процесс принятия решений значительно более сложен и опосредован множеством различных обстоятельств и соображений не обязательно связанных с данной группой решения часто принимаются на основе прошлого опыта. Решения принимают непосредственно по групповой деятельности предпринимают постоянные попытки разработки новых и неоднозначных решений проблемы Сфера действий руководителя шире поскольку он представляет малую группу в более широкой социальной системе Сфера деятельности лидера в основном малая группа Однако несмотря на приведенные...
78154. Самосовершенствование личности 53.53 KB
  Самосовершенствование определяется взаимодействием человека с конкретной социальной средой в ходе которого он вырабатывает у себя такие качества которые дают успех в профессиональной деятельности и в жизни вообще. Рубинштейн трактовал жизненный путь не только как движение человека вперед но и движение вверх к высшим более совершенным формам и лучшим проявлениям человеческой сущности завершение жизни достижение не старости упадка и смерти а достижение личностного совершенства. Причем предъявляемые требования должны быть несколько...
78155. Система образования в Республике Беларусь: состояние и пути развития 45.34 KB
  Кодекс Республики Беларусь об образовании как главный законодательный документ в области образования. Позитивные и негативные тенденции и особенности функционирования системы образования на всех уровнях. Направление совершенствования высшего образования в Республике Беларусь.
78156. Социализация личности. Семейное воспитание 52.23 KB
  Признаки и функции коллектива методика его формирования. Признаки развитого коллектива: наличие общественно и личностно значимых целей; включение членов коллектива в разнообразную социальную деятельность; соответствующая организация совместной деятельности; связь коллектива с обществом; наличие положительных традиций и перспектив; атмосфера взаимопомощи доверия и требовательности; развитые критика и самокритика сознательная дисциплина и др. Это результат упорного целенаправленного и длительного труда всего коллектива результат...
78157. Социальная подструктура личности 33.17 KB
  Стадии социализации личности. Полученные в процессе социализации знания приобретенные личностные качества не станут лишь индивидуальным достоянием а станут достоянием общества так как человек не только обогащается опытом но и реализует себя как личность влияя на жизненные обстоятельства и окружающих людей. Механизмы социализации: Имитация механическое повторение воспроизведение наблюдаемых человеком социальных действий без понимания их подлинного смысла.
78158. Эмоции и психические состояния личности 115.54 KB
  Эмоции имеются и у животных но у человека они приобретают особую глубину имеют множество оттенков и сочетаний. Эмоции различают по интенсивности и длительности а также по степени осознанности причины их появления. В связи с этим выделяют: настроение собственно эмоции и аффекты.