Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Теоретические аспекты и практические реализации создания, внедрения и использования баз данных, СУБД, хранилищ.
  • Страница:
  • 1

ТЕМА:

Ошибка в Oracle - Ora-00600 12 года 8 мес. назад #2589

Выполняю примерно следующее:
update TABLE_NAME@LINK_NAME t

set (U_FIELD) = (select U_FIELD from VIEW_NAME tt where tt.id = 24 )

where t.id = 10

при этом
select U_FIELD from VIEW_NAME tt where tt.id = 24

всегда возвращает ОДНУ и ТОЛЬКО одну запись.
под TABLE_NAMEом мы понимаем TABLE или VIEW,
под VIEW_NAMEом - только VIEW, так как с таблицами проблем не возникает.

Методом проб выявил, что с некоторыми вьюхами (VIEW_NAME) данный запрос отрабатывает правильно, с некоторыми выдает нечто злое и нехорошее:
ORA-00600: internal error code, arguments: [kkdcacc1],[],[],[],[],[],[],[]
Подскажите, как с этой бедой бороться, или поясните хотя бы причины её возникновения. Интересно любое мнение по этому поводу.
Заранее спасибо.
В качестве базы на линке используется аналогичный ORACLE 9.2
Ошибки типа невалидных триггеров, неприводимых типов, нарушения целостности и прочей ламерской гадости исключены.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Ошибка в Oracle - Ora-00600 12 года 8 мес. назад #2590

Попробуй "доспецифицировать"
update TABLE_NAME@LINK_NAME t
set t.U_FIELD = (select tt.U_FIELD from VIEW_NAME tt where tt.id = 24 )
where t.id = 10;

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Ошибка в Oracle - Ora-00600 12 года 8 мес. назад #2591

Буквально:
update V_OUT_NAKL@manager t set 

(DOCNAME) = 

( select  DOCNAME

 from V_OUT_NAKL tt where tt.id = 2551 ) 

where t.id = 2584

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Ошибка в Oracle - Ora-00600 12 года 8 мес. назад #2592

update TABLE_NAME@LINK_NAME t
set t.U_FIELD = (select tt.U_FIELD from VIEW_NAME tt where tt.id = 24 )
where t.id = 10;

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Ошибка в Oracle - Ora-00600 12 года 8 мес. назад #2593

Reset, комбинации синтаксических оборотов вокруг моего желания выполнить подобную операцию результатом имеют все ту же ошибку )

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Ошибка в Oracle - Ora-00600 12 года 8 мес. назад #2594

1) select t.U_FIELD from TABLE_NAME@LINK_NAME t where t.id = 10 and rownum < 10;
2) select tt.U_FIELD from VIEW_NAME tt where tt.id = 24
3) какие типы данных у t.U_FIELD и у tt.U_FIELD
И все будет ок...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
Время создания страницы: 0.261 секунд