kek

kek

Artem

1) В реляционной модели объекты представлены в виде таблиц. В виде таблиц могут отображаться не только объекты, но и связи. Таблица состоит из произвольного кол-ва строк и столбцов. Обязательное условие построения реляционной модели - в каждой таблице есть первичный ключ.

3 типа связей: (1 к 1, 1 к многим, многие ко многим).

Отношение это подмножество декартова произведения множеств Т1, Т2, Т3, ..Тn, где Ti = типа данных (домены). Кол-во множеств T = арность отношения.

Отношение состоит из заголовка и тела. Заголовок - множество атрибутов, а тело - множество кортежей, соответствующих заголовку.

Если проще, то заголовок - первая строка таблицы
тело - остальные строки таблицы

Свойства отношения:

Нет одинаковых кортежей
Порядок кортежей в отношении не определен
Порядок атрибутов в заголовке отношения не определен

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

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

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

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

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

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

Виды связей между отношениями:

1 к 1

1 к м

м к м


Транзакция - последовательность операций над БД, рассматриваемая СУБД как единое целое. Если во время транзакции произойдёт сбой, то частичные изменения должны быть отменены для возвращения БД в прежнее, непротиворечивое состояние. Транзакции может инициализировать один пользователь или несколько. По этому признаку БД классифицируются как однопользовательские и многопользовательские.


Целостность базы данных (database integrity) — соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. Каждое правило, налагающее некоторое ограничение на возможное состояние базы данных, называется ограничением целостности (integrity constraint). Примеры правил: вес детали должен быть положительным; количество знаков в телефонном номере не должно превышать 25; возраст родителей не может быть меньше возраста их биологического ребёнка и т. д.

Понятие согласованности, или целостности данных является ключевым понятием баз данных.

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

Задача аналитика и проектировщика базы данных — возможно более полно выявить все имеющиеся ограничения целостности и задать их в базе данных.

Механизмы обеспечения целостности являются одной из составляющих концепции модели данных

Целостность БД не гарантирует достоверности (истинности) содержащейся в ней информации, но обеспечивает по крайней мере правдоподобность этой информации, отвергая заведомо невероятные, невозможные значения. Таким образом, не следует путать целостность (непротиворечивость) БД с истинностью БД. Истинность и непротиворечивость — не одно и то же


file = open("numbers", 'r')

numbers = []

for number in file:

numbers.append(int(number))

file.close()

for number in numbers:

print(number + numbers[-1])