powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Когда может изменяться rowid?
18 сообщений из 18, страница 1 из 1
Когда может изменяться rowid?
    #39761447
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, в каких случаях может изменяться rowid строки?
Версия Oracle 10g.
Я нагуглил такой список:

- Экспорт/импорт таблицы
- ALTER TABLE XXXX MOVE
- ALTER TABLE XXXX SHRINK SPACE
- FLASHBACK TABLE XXXX
- Партиционирование (разделение, изменение, комбинирование)

То есть физические манипуляции с файлами данных.
Но это не с сайта Oracle, поэтому может быть что-то упущено.
Может ли rowid меняться при применении транзакций, выполнении DML, рестарте сервера?
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761455
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Но это не с сайта Oracle
т.е документации ты не доверяешь ?
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761456
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.в каких случаях может изменяться rowid строки?Лучше попытайся назвать причину, зачем нужно хранить rowid.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761457
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123ййт.е документации ты не доверяешь ?
Я разве не противоположное сказал?
Как раз в документации я не нашел статьи, где бы перечислялись причины смены rowid.

Elicзачем нужно хранить rowid.
Хранить не нужно, но нужно помнить на протяжении срока выполнения долгоиграющего скрипта.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761469
Maxim Demenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Может ли rowid меняться при применении транзакций, выполнении DML, рестарте сервера?

Как минимум может при UPDATE клüча партиционирования в партиционированной таблице

Regards

Maxim
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761470
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://docs.oracle.com/cd/B19306_01/server.102/b14200/pseudocolumns008.htm If you delete a row, then Oracle may reassign its rowid to a new row inserted later.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761478
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Хранить не нужно, но нужно помнить на протяжении срока выполнения долгоиграющего скрипта.

если строка заблокирована, можете пользовать спокойно,
пока curent of cursor реализовано на WHERE ROWID = :B1

.....
stax
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761484
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Staxесли строка заблокирована, можете пользовать спокойноблокировка гарантирует только, что строку-роуид не поменяет другая транзакция.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761500
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.,

еще есть ИОТ (но там не совсем ровид)
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
  1* select rowid,i.* from iii i
SQL> /

ROWID                                             ID NAME
----------------------------------------- ---------- ----------
*BAEQbKsCwQL+                                      1 1111111
*BAEQbKsCwQP+                                      2 222222

SQL> update iii set id=3 where id=1;

1 row updated.

SQL> select rowid,i.* from iii i
  2  /

ROWID                                             ID NAME
----------------------------------------- ---------- ----------
*BAEQbKsCwQP+                                      2 222222
*BAEQbKsCwQT+                                      3 1111111



.....
stax
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761555
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViewerIf you delete a row, then Oracle may reassign its rowid to a new row inserted later.
Stax==>*BAEQbKsCwQT+
Ага, понятно.
Значит rowid может поменяться в том числе и в рамках сессии.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761564
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Значит rowid может поменяться в том числе и в рамках сессии.А вне "рамок сессии" это как?
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761583
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.Значит rowid может поменяться в том числе и в рамках сессии.
Надо различать изменение rowid конкретной записи (физический переезд) и появление совершенно иной записи по известному rowid.
Кроме того, следует отличать rowid от logical rowid IOT
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761605
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-А вне "рамок сессии" это как?
Есть долгоиграющий скрипт, который запускается, подключается к БД и что-то делает в течение времени, пока запущен (несколько часов/дней/недель). Это время, пока он запущен, я считаю сессией.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761612
Фотография Stax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.-2-А вне "рамок сессии" это как?
Есть долгоиграющий скрипт, который запускается, подключается к БД и что-то делает в течение времени, пока запущен (несколько часов/дней/недель). Это время, пока он запущен, я считаю сессией.
если "долгоиграющий скрипт" не блокирует строки с которыми работает по rowid,
то есть опасность что он обработает "левые/чужие" записи

....
stax
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761615
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, я это уже понял.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761668
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alibek B.-2-А вне "рамок сессии" это как?
Есть долгоиграющий скрипт, который запускается, подключается к БД и что-то делает в течение времени, пока запущен (несколько часов/дней/недель). Это время, пока он запущен, я считаю сессией .Это похоже на описание рамок сессии , вопрос был про вне рамок сессии .

Staxесли "долгоиграющий скрипт" не блокирует строки с которыми работает по rowid,
то есть опасность что он обработает "левые/чужие" записиА если блокирует?
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761691
Alibek B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-Это похоже на описание рамок сессии , вопрос был про вне рамок сессии .
А вне рамок сессии изменение rowid меня не интересует.
Скрипт следит за данными и была мысль однозначно идентифицировать записи с помощью rowid, пока скрипт запущен.
Но поскольку rowid может меняться, то этот способ не подходит.
...
Рейтинг: 0 / 0
Когда может изменяться rowid?
    #39761746
Фотография --Eugene--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-блокировка гарантирует только, что строку-роуид не поменяет другая транзакция.тоесть, исходя из сказанного, сама она (строка/ROWID) поменяться может - без транзакции?
удивительно. я всегда думал, что блокировка существует не для защиты от *других транзакций*, а в принципе для защиты от изменений без твоего ведома.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Когда может изменяться rowid?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]