CftClub.ru
Клуб специалистов ЦФТ-Банк

Контроль целостности базы данных

 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Настройка и сопровождение
Предыдущая тема :: Следующая тема  

Сколько найдено и что сделаю:
найдено достаточно, чтобы усилить контроль своими силами и пожалуюсь в поддержку
0%
 0%  [ 0 ]
найдено достаточно, чтобы усилить контроль своими силами, в поддержку не обращусь (почему?)
50%
 50%  [ 1 ]
найдено недостаточно чтобы что-то делать
0%
 0%  [ 0 ]
ничего не найдено или вам это знать ни к чему
50%
 50%  [ 1 ]
Всего проголосовало : 2

Автор Сообщение
sdo
Участник


Вступление в Клуб: 17.01.2017
СообщениеСр Сен 04, 2019 14:03   Контроль целостности базы данных Ответить с цитатой
Полезность: 2
при установке пакета, который обеспечивает запрет удаления некоторых объектов, мы встретили
Код:
ORA-00054: ресурс занят и задано его получение с параметром NOWAIT, либо истекло время ожидания


Дальнейшее исследование показало, что несмотря на то, что
в журнале установки было написано ПЕРЕНОС ЗАВЕРШЕН, выше по логу
ALTER TABLE Z#[******] ADD CONSTRAINT не состоялся и ожидание разработчика относительно целостности данных - навсегда осталось в его розовых мечтах.
Проверьте и вы свои схемы - в обмен на код поиска отсутствующих CONSTRAINT - я прошу уважаемый All ответить: сколько потеряшек найдено у Вас, что будете делать и нормально ли, что система сообщает об успешности установки пакета, если одно из свойств пакета не установилось?

Код:


select CONDATA from (
select CLASS_TAB_COLUMNS.TABLE_NAME||'.'||CLASS_TAB_COLUMNS.COLUMN_NAME||'=='||CL_TABL_target.TABLE_NAME||'.ID' CONDATA  from
CLASS_TAB_COLUMNS
,  CLASS_TABLES CL_TABL_target
where
-- rownum < 10 and
 CL_TABL_target.CLASS_ID=CLASS_TAB_COLUMNS.TARGET_CLASS_ID
 and BASE_CLASS_ID='REFERENCE'
  -- and CLASS_TAB_COLUMNS.CLASS_ID='????' --target
  -- and CLASS_TAB_COLUMNS.TARGET_CLASS_ID='AC_FIN' -- source РАСКОММЕНТИРУЙТЕ чтобы искать только отсутствие ссылок на конкретный класс
 order by CLASS_TAB_COLUMNS.TARGET_CLASS_ID
 ) fk_cft
 where fk_cft.CONDATA not in (
SELECT  ucc1.TABLE_NAME||'.'||ucc1.column_name||'=='||ucc2.TABLE_NAME||'.'||ucc2.column_name CONDATA
FROM user_constraints uc ,
  user_cons_columns ucc1 ,
  user_cons_columns ucc2
WHERE uc.constraint_name = ucc1.constraint_name
AND uc.r_constraint_name = ucc2.constraint_name
AND ucc1.POSITION        = ucc2.POSITION -- Correction for multiple column primary keys.
 AND uc.constraint_type   = 'R'
);

wolfio
Участник - экстремал


Вступление в Клуб: 22.10.2012
СообщениеЧт Сен 05, 2019 11:40    Ответить с цитатой
Полезность: Нет оценки
а как поддержка ЦФТ это комментирует?
vtar
Эксперт


Вступление в Клуб: 20.03.2009
СообщениеПт Сен 06, 2019 15:54    Ответить с цитатой
Полезность: Нет оценки
п.2 так как поддержки нет, а то был бы 1
markoff
Участник - экстремал


Вступление в Клуб: 09.06.2009
СообщениеПн Сен 09, 2019 08:53    Ответить с цитатой
Полезность: Нет оценки
vtar пишет:
п.2 так как поддержки нет, а то был бы 1


Аналогично.
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Настройка и сопровождение Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru