powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / опция transactional не работает для json-индексов у одного меня?
6 сообщений из 6, страница 1 из 1
опция transactional не работает для json-индексов у одного меня?
    #39477284
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
create   table json_storage (
id number not null,
created_dtm timestamp not null,
json_data blob
);

CREATE  INDEX json_fts_idx ON json_storage (json_data)
  INDEXTYPE IS CTXSYS.CONTEXT
PARAMETERS ('section group CTXSYS.JSON_SECTION_GROUP SYNC (EVERY "SYSDATE+1/24") transactional') ;

insert into json_storage(id, created_dtm, json_data)
   values(
   -1000,
   systimestamp,
   utl_raw.cast_to_raw('
                         {"menu": {
                        "id": "' || '444444444'  ||'",
                        "value": "File",
                        "popup": {
                          "menuitem": [
                            {"value": "New", "onclick": "CreateNewDoc()"},
                            {"value": "Open", "onclick": "OpenDoc()"},
                            {"value": "Close", "onclick": "CloseDoc()"}
                          ]
                        }
                      }}
                       '
                    )
   );

 select JSON_VALUE(json_data, '$.menu.id')
from json_storage
where json_textcontains(json_data, '$.menu.id', '4444444449') ;

select JSON_VALUE(json_data, '$.menu.id')
from json_storage
where contains(json_data, '4444444449 INPATCH(/menu/id)') >0;

select JSON_VALUE(json_data, '$.menu.id')
from json_storage
where contains(json_data, '4444444449') >0;
...
Рейтинг: 0 / 0
опция transactional не работает для json-индексов у одного меня?
    #39477285
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
итого первые 2 select ничего не видят, а contains в чистом виде возвращает данные, т.е. в нём transactional работает. Почему тогда не работает для первых 2-х? Ведь contains сам по себе работает на context индексе и раз он возвращает что надо, значит transactional именно для него работает. Выходит как-то криво работают секции.

как только делаю

Код: plsql
1.
2.
3.
 begin
    ctx_ddl.SYNC_INDEX('PERSO.json_fts_idx'); --schema inside :)
   end;



работают и первые 2.

Подскажите куда копать.
...
Рейтинг: 0 / 0
опция transactional не работает для json-индексов у одного меня?
    #39477288
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
select JSON_VALUE(json_data, '$.menu.id')
from json_storage
where contains(json_data, '4444444449 INPACH(/menu/id)') >0;

- вот так второй, была опечатка
...
Рейтинг: 0 / 0
опция transactional не работает для json-индексов у одного меня?
    #39477307
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shtock,

INPATH - знаю
INPACH - не знаю, похоже и Oracle не очень
...
Рейтинг: 0 / 0
опция transactional не работает для json-индексов у одного меня?
    #39477311
MaximaXXL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
опция transactional не работает для json-индексов у одного меня?
    #39477316
Фотография Shtock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про него мне читать меньше всего интересно :)
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / опция transactional не работает для json-индексов у одного меня?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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