Данный раздел содержит описание ограничений целостности спроектированной базы данных.
Данная база данных имеет 2 вида блокировки:
блокировка записи - при этом транзакция блокирует строки в таблицах таким образом, что запрос другой транзакции к этим строкам будет отменен;
блокировка чтения - в этом случае транзакция блокирует строки таблиц так, что запрос со стороны другой транзакции на блокировку записи этих строк будет отвергнут, а на блокировку чтения - принят.
Также поддерживает 4 уровня изоляции транзакции, которые предотвращают проблемы одновременного доступа:
уровень 0 - запрещение «загрязнения» данных; этот уровень требует, чтобы изменять данные могла только одна транзакция, если другой транзакции необходимо изменить эти же данные, то она должна ожидать завершения первой транзакции;
уровень 1 - запрещение «грязного» чтения. Если транзакция начала изменение данных, то никакая другая транзакция не сможет прочитать эти данные до тех пор, пока первая транзакция не завершится;
уровень 2 - запрещение неповторяемого чтения. Если транзакция считывает данные, то никакая другая транзакция не сможет их изменить. Таким образом, при повторном чтении они будут находиться в первоначальном состоянии;
уровень 3 - запрещение фантомов. Если транзакция обращается к данным, то никакая другая транзакция не сможет добавить новые или удалить имеющие строки, которые могут быть считаны при выполнении транзакции. Реализация этого уровня блокирования выполняется путем использования блокировок диапазона ключей. Подобная блокировка накладывается не на конкретные строки таблицы, а на строки, удовлетворяющие определенному логическому условию.
Некоторые ограничения на поля таблиц.
4.2.1. Таблица "Игрок"
№ п/п
Поле
Ограничение
1.
Рост
Строго больше 0
2.
Вес
Строго больше 0
3.
Личный номер
Строго больше 0
4.2.2. Таблица "Турнир"
№ п/п
Поле
Ограничение
1.
Дата окончания
Позднее "Дата начала"
4.2.3. Таблица "Турнир_Команда"
№ п/п
Поле
Ограничение
1.
Количество очков
Больше или равно 0
2.
Количество побед
Больше или равно 0
3.
Количество поражений
Больше или равно 0
4.
Количество ничьих
Больше или равно 0
4.2.4. Таблица "Матч"
№ п/п
Поле
Ограничение
1.
Дата
Между "Дата начала" и "Дата окончания" данного турнира
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет
studopedia.su - Студопедия (2013 - 2025) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав!Последнее добавление