Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Работа в одной сессии  [new]
Гость13
Guest
Подскажите новичку, пожалуйста. Все в одной сессии .
Запускается процедура1 из Пакета 1, которая создает запись.
Процедура2 из Пакета2, прочитает эту созданную запись всегда? Или в зависимости от настроек?
26 мар 06, 19:20    [2490740]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
_spy_
Member

Откуда: Москва
Сообщений: 826
Если все в одной транзакции, то прочитает.
26 мар 06, 19:37    [2490761]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
Гость13
Guest
Поясни, пожалуйста. На мой взгляд должно работать и для разных транзакций.
26 мар 06, 19:45    [2490772]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
_spy_
Member

Откуда: Москва
Сообщений: 826
Если в разных транзакциях, то зависит от уровня изолированности. Если уровень изолированности второй транзакции READ_COMMITED (по умолчанию), то вторая транзакция увидит изменения в первой только после фиксации первой. Если уровень SERIALIZE, то вторая не увидит изменения в первой транзакции если она началась до фиксации первой, т.к. она видит только снимок на момент своего старта. В любом случае, пока первая не зафиксирует изменения, другие транзакции никак их не увидят. Читай в документации по транзакциям. А что, у тебя процедуры работают в разных транзакциях?
26 мар 06, 19:56    [2490780]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
Гость13
Guest
Поясни, пожалуйста. На мой взгляд должно работать и для разных транзакций.
26 мар 06, 19:58    [2490782]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
Alexey Yatsenko
Member

Откуда:
Сообщений: 154
_spy_
Если в разных транзакциях, то зависит от уровня изолированности.

Не гони. Написано же русским по белому - в одной сессии.
27 мар 06, 11:00    [2491837]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
_spy_
Member

Откуда: Москва
Сообщений: 826
Alexey Yatsenko
Не гони. Написано же русским по белому - в одной сессии.
А автономные транзакции уже отменили?
27 мар 06, 11:11    [2491904]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
Alexey Yatsenko
Member

Откуда:
Сообщений: 154
Выше ты говорил про уровень изолированности. Теперь про автономные транзакции. Ты уж определись.
28 мар 06, 14:08    [2497459]     Ответить | Цитировать Сообщить модератору
 Re: Работа в одной сессии  [new]
_spy_
Member

Откуда: Москва
Сообщений: 826
Alexey Yatsenko
Выше ты говорил про уровень изолированности. Теперь про автономные транзакции. Ты уж определись.

И в чем противоречие? Если процедуры работают в одной сессии - это еще не значит, что они работают в одной транзакции. Если 1-я процедура оформлена как автономная транзакция, то изменения, проведенные в ней (в частности, добавление записи в таблицу) могут быть как видимы, так и невидимы для процедуры, из которой была вызвана 1-я процедура - зависит от уровня изолированности родительской транзакции.
28 мар 06, 16:45    [2498456]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить