Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 20:27

Вопрос тест профессионал 7 раздел. Запрос.

Автор Salmishskay2516, 01 дек 2012, 17:18

0 Пользователей и 1 гость просматривают эту тему.

Salmishskay2516

7.22 Флаг "Для изменения" (в режиме автоматических транзакци-онных блокировок) на закладке "Дополнительно" конструктора
запросов позволяет:
1. Заблокировать на изменение данные указанных таблиц-источников при
выполнении запроса (вне транзакции)
2. Заблокировать на чтение данные указанных таблиц-источников в запросе
(как вне, так и в рамках транзакции)
3. Заблокировать данные указанных таблиц-источников на чтение (в рам-ках транзакции)
4. Верны ответы 1 и 2

Здравствуйте. Что у меня нет такого флага "Для изменения". В чем дело?

mixqn

ответ 1.
флаг "Блокировать данные для последующего изменения"

Salmishskay2516

флаг "Блокировать данные для последующего изменения" и для чего этот флаг возможно применить?

mixqn

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

Salmishskay2516

То есть при выполнении запроса, данные которые берутся в запросе ни кто изменить не мог. Так что ли? Правильный ответ тогда логически №1.

mixqn

все верно. читать можно, а изменять - нельзя. ответ 1.

Salmishskay2516

В интернете другой вариант правильного ответа №3. :dfbsdfbsdf:

mixqn

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

mixqn

почитал пару статей в интернете. в общем то я от части был прав. читать данные можно, но ограниченно: не смогут прочесть такие же запросы - тоже внутри транзакций и тоже с "ДЛЯ ИЗМЕНЕНИЯ", а простые запросы, вне транзакций и без  "ДЛЯ ИЗМЕНЕНИЯ", спокойно смогут данные прочитать.
в общем я ошибся по 2-м причинам:
1) не обратил внимание на приписки в скобках (в транзакции или вне транзакции), хотя на самом деле это ключевой момент
2) оказывается есть тонкости, о которых я просто не знал.

в общем тут самое главное - это внутри транзакции. поэтому ответ все таки 3.

Salmishskay2516


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск