Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
 Re: Значение поля меняется от условия  [new]
mRdUKE
Member

Откуда: ТЛТ
Сообщений: 490
На тестовой машине (где 11.2.0.3) скопировал данные. Результат тот же!
Ради интереса, - решил добавить ещё (66-й по счёту) столбец в таблицу (PROIZV_FROM добавлялся недавно, крайним, если это важно):
alter table usb.lj_hgap add  col VARCHAR2(5 BYTE)
/
update lj_hgap set col='11111' where idhgap=2328640
/
commit
/
проверяем
select 1, rowid, proizv_from, created, idhgap, col
from usb.lj_hgap
where 
created >= to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and 
created <= to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
   union all
select /*+ full(t) */ 2, rowid, proizv_from, created, idhgap, col
from usb.lj_hgap t
where 
created >= to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and 
created <= to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
1                                            ROWID                                            PROIZV_FROM       CREATED                  IDHGAP                                       COL         
-------------------------------------------- ------------------------------------------------ ----------------- ------------------------ -------------------------------------------- ----------- 
                                           1 *BAIATYoFxAMhVyn+                                80175             04.06.2019 14:05:48                                           2328640             
                                           2 *BAIATYoFxAMhVyn+                                80175             04.06.2019 14:05:48                                           2328640 11111       
теперь беда с COL. }o.0{ Какие-то лимиты на SE недокументированные, или я что-то упустил?
4 июн 19, 18:39    [21901826]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
mRdUKE
Member

Откуда: ТЛТ
Сообщений: 490
xtender
попробуй так тогда:
update usb.lj_hgap t set PROIZV_FROM = NULL where rowid='*BAIK4x0FxAMhVyn+';
update usb.lj_hgap t set PROIZV_FROM = 'ZZZZZ' where rowid='*BAIK4x0FxAMhVyn+';
update usb.lj_hgap t set PROIZV_FROM = '80175' where rowid='*BAIK4x0FxAMhVyn+';
commit;
снова мимо
select 1, rowid, proizv_from, created, idhgap, sysdate
from usb.lj_hgap
where 
created >= to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and 
created <= to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
   union all
select /*+ full(t) */ 2, rowid, proizv_from, created, idhgap, sysdate
from usb.lj_hgap t
where 
created >= to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and 
created <= to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
1                                            ROWID                                            PROIZV_FROM       CREATED                  IDHGAP                                       SYSDATE                  
-------------------------------------------- ------------------------------------------------ ----------------- ------------------------ -------------------------------------------- ------------------------ 
                                           1 *BAIK4x0FxAMhVyn+                                                  04.06.2019 14:05:48                                           2328640 04.06.2019 19:54:16      
                                           2 *BAIK4x0FxAMhVyn+                                80175             04.06.2019 14:05:48                                           2328640 04.06.2019 19:54:16     
4 июн 19, 18:55    [21901837]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
xtender
Member

Откуда: Мск
Сообщений: 5216
mRdUKE,

изначальная версия точно 11.2.0.4? а то на 11.2.0.3 был баг
Bug 14472647 - Wrong results on IOT secondary index after DML (Doc ID 14472647.8)
4 июн 19, 18:55    [21901838]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
xtender
Member

Откуда: Мск
Сообщений: 5216
еще правда есть Bug 17332800 - Wrong results with IOTs and fix of bug 13705338 present (Doc ID 17332800.8)
пофиксен в 11.2.0.4.1
4 июн 19, 18:56    [21901841]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
mRdUKE
Member

Откуда: ТЛТ
Сообщений: 490
xtender
изначальная версия точно 11.2.0.4?
Точно, - "рабочая" 4-ка.
xtender
еще правда есть Bug 17332800 - Wrong results with IOTs and fix of bug 13705338 present (Doc ID 17332800.8)
пофиксен в 11.2.0.4.1
Добро, почитаю, если что, - придётся напрягать "админа".
4 июн 19, 19:03    [21901848]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17580
mRdUKE
решил добавить ещё (66-й по счёту) столбец в таблицу (PROIZV_FROM добавлялся недавно, крайним, если это важно)

Может быть важно.
Вторичные индексы по данным из сегмента переполнения...

Если у Вас 100500 атрибутов и все проиндексированы - то зачем вообще IOT?
Вернитесь к heap-organized.
4 июн 19, 19:10    [21901859]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
mRdUKE
Member

Откуда: ТЛТ
Сообщений: 490
andrey_anonymous
Если у Вас 100500 атрибутов и все проиндексированы - то зачем вообще IOT?
Досталось по наследству.
andrey_anonymous
Вернитесь к heap-organized.
Это через CTAS, или возможно без "копирования" данных, подводные камни?
4 июн 19, 19:29    [21901875]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
andrey_anonymous
Member

Откуда: Москва
Сообщений: 17580
mRdUKE
Это через CTAS

Да хоть через экспорт-импорт :)
4 июн 19, 19:43    [21901890]     Ответить | Цитировать Сообщить модератору
 Re: Значение поля меняется от условия  [new]
mRdUKE
Member

Откуда: ТЛТ
Сообщений: 490
Накатили PSU 11.2.0.4.7. Без изменений.
+
SQL> update usb.lj_hgap set proizv_from='HELLO' where idhgap=2328640
 2  /

1 строка обновлена.

Затрач.время: 00:00:00.14

SQL> commit
 2  /

Фиксация обновлений завершена.

Затрач.время: 00:00:00.01

SQL> select rowid, proizv_from, idhgap
 2  from usb.lj_hgap
 3  where created between
 4  to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and
 5  to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
 6  /

ROWID                                     PROIZ     IDHGAP
----------------------------------------- ----- ----------
*BAIATYoFxAMhVyn+                                  2328640

Затрач.время: 00:00:00.00

SQL> select /*+ full(t) */ rowid, proizv_from, idhgap
 2  from usb.lj_hgap t
 3  where created between
 4  to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and
 5  to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
 6  /

ROWID                                     PROIZ     IDHGAP
----------------------------------------- ----- ----------
*BAIATYoFxAMhVyn+                         HELLO    2328640

Затрач.время: 00:00:44.79

SQL> select 1, rowid, proizv_from, idhgap
  2  from usb.lj_hgap
  3  where created between
  4  to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and
  5  to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
  6     union all
  7  select /*+ full(t) */ 2, rowid, proizv_from, idhgap
  8  from usb.lj_hgap t
  9  where created between
 10  to_date('04.06.2019 14:05:40','dd.mm.yyyy hh24:mi:ss') and
 11  to_date('04.06.2019 14:05:50','dd.mm.yyyy hh24:mi:ss')
 12  /

         1 ROWID                                     PROIZ     IDHGAP
---------- ----------------------------------------- ----- ----------
         1 *BAIATYoFxAMhVyn+                                  2328640
         2 *BAIATYoFxAMhVyn+                         HELLO    2328640

Затрач.время: 00:00:45.26

SQL>
5 июн 19, 13:00    [21902440]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
Все форумы / Oracle Ответить