Учебное пособие Санкт-Петербург «бхв-петербург»


BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ



Pdf көрінісі
бет205/256
Дата18.11.2022
өлшемі1.88 Mb.
#465124
түріУчебное пособие
1   ...   201   202   203   204   205   206   207   208   ...   256
sql osnovi yazika

BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ;
BEGIN
Сначала посмотрим содержимое таблицы:
SELECT * FROM aircrafts_tmp;
Обратите внимание, что после уже проведенных экспериментов в таблице осталось
меньше строк, чем было вначале.
aircraft_code |
model
| range
---------------+---------------------+-------
320
| Airbus A320-200
| 5700
321
| Airbus A321-200
| 5600
319
| Airbus A319-100
| 6700
SU9
| Sukhoi SuperJet-100 | 3300
CN1
| Cessna 208 Caravan | 2100
CR2
| Bombardier CRJ-200 | 1900
(6 строк)
На втором терминале проведем ряд изменений:
BEGIN TRANSACTION ISOLATION LEVEL REPEATABLE READ;
BEGIN
Добавим одну строку и одну строку обновим:
INSERT INTO aircrafts_tmp
VALUES ( 'IL9', 'Ilyushin IL96', 9800 );
INSERT 0 1
UPDATE aircrafts_tmp
SET range = range + 100
WHERE aircraft_code = '320';
UPDATE 1
266


9.4. Уровень изоляции Repeatable Read
END;
COMMIT
Переходим на первый терминал.
SELECT *
FROM aircrafts_tmp;
На первом терминале ничего не изменилось: фантомные строки не видны, и также
не видны изменения в уже существующих строках. Это объясняется тем, что снимок
данных выполняется на момент начала выполнения первого запроса транзакции.
aircraft_code |
model
| range
---------------+---------------------+-------
320
| Airbus A320-200
| 5700
321
| Airbus A321-200
| 5600
319
| Airbus A319-100
| 6700
SU9
| Sukhoi SuperJet-100 | 3300
CN1
| Cessna 208 Caravan | 2100
CR2
| Bombardier CRJ-200 | 1900
(6 строк)
Завершим первую транзакцию тоже:


Достарыңызбен бөлісу:
1   ...   201   202   203   204   205   206   207   208   ...   256




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет