Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GOS_na_5.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
953.48 Кб
Скачать

1. Базовые алгоритмические операторы (if, switch, for, while).

Операторы, управляющие порядком выполнения программы, называются управляющими. К ним относятся условные операторы: if, if-else, switch и операторы цикла: for, while, do-while.

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

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

Все операторы языка с++, кроме составных операторов, заканчиваются точкой с запятой ";".

if (<условие>) {<оператор1>}

else {< оператор2>}

for (<переменная>;<условие_выполнения>;<список_выражений>) {<тело_цикла>}

switch ( expression ){

case constant-expression1 : statement1;

case constant-expression2 : statement2;

[default : statement]

}

while (<условие_выполнения>) {<тело_цикла>}

do {<тело_цикла>} while (<условие_выполнения>);

2. Понятие транзакций. Базовые свойства транзакций. Методы управления транзакциями.

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

Различают последовательные (обычные), параллельные и распределённые транзакции. Распределённые транзакции подразумевают использование больше чем одной транзакционной системы и требуют намного более сложной логики (например, two-phase commit — двухфазный протокол фиксации транзакции). Также, в некоторых системах реализованы автономные транзакции, или под-транзакции, которые являются автономной частью родительской транзакции.

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

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

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

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

Средства управления транзакциями. Операторы: COMMIT - оператор завершения транзакция и фиксирование нового состояния; ROLLBACK - SAVEPOINT - оператор отката, возврат базы к предшествующему до начала выполнения группы операторов, обобщенных в транзакцию; SAVEPOINT - сохранение промежуточного состояния БД, возврат к данному промежуточному состоянию.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]