06.03.2011 13:59
Mr_Vito
 
в супермаге обнаружил выключенный CONSTRAINT и не могу его включить:

ALTER TABLE supermag.smspec
ADD CONSTRAINT smcspeccause FOREIGN KEY (causetype, causeid, causespecitem)
REFERENCES smspec (doctype,docid,specitem)
DISABLE NOVALIDATE

говорит:
ORA-02298: невозможно подтвердить (SUPERMAG.SMCSPECCAUSE) - не найдены родительские ключи

запрос:
select doctype, docid, specitem, count(rowid)
from smspec
group by doctype, docid, specitem
HAVING count(rowid)>1

не выдал ни каких записей
подскажите где я туплю и куда надо смотреть?
06.03.2011 16:42
OlegON
 
А ты можешь сказать, каким образом соотносится поиск дубликатов (твой запрос) с поиском отсутствующих ключей (причина невключения констрейнта)?
06.03.2011 17:11
Mtirt
 
Еще вопрос. Какая версия Супермага?
Я у себя этого констрейна не вижу.
09.03.2011 09:43
Mr_Vito
 
Версия 1.026.3 сп10
а с запросом я конечно стормозил (самому смешно) :)))))
10.03.2011 10:40
akonev
 
Код:
select * from smspec s
where s.causetype is not null
and not exists(select * 
  from smspec c 
  where s.causetype=c.doctype 
    and s.causeid=c.docid 
    and s.causespecitem=c.specitem)
10.03.2011 10:47
akonev
 
Цитата:
Mtirt Еще вопрос. Какая версия Супермага?
Я у себя этого констрейна не вижу.
он
Цитата:
Mr_Vito ... FOREIGN KEY ...
по smspec. где-то в них и сидеть должен. в 1.27.4sp2 имеется
15.03.2011 15:48
Mr_Vito
 
Спасибо, я правда сделал еще в тот день, забыл отписать :(
некорректны записи просто обнулил :) (правда update делался почти 12 часов)
15.03.2011 15:51
OlegON
 
надо было снять индексы.
а не поэтому ли Ошибка расчетов товародвижения - Страница 2 - случилось?
15.03.2011 16:08
Mr_Vito
 
нет, та ошибка отдельно, не связана с этой
15.03.2011 16:17
OlegON
 
Откуда такая уверенность?
Часовой пояс GMT +3, время: 01:51.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.