Текущее время: Чт, мар 28 2024, 23:08

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ! Прежде чем задавать вопрос, ознакомьтесь со ссылками ниже:

Вопросы по отличиям версий SAP, Add-On, EHP - сюда
Вопросы по SAP Front End (SAPlogon, SAPgui, guiXT и т.д.) - сюда
Вопросы по LSMW - сюда
Вопросы по архивации в SAP - сюда
Вопросы по SAP GRC - сюда
Вопросы по SAP Business Workplace (почте SAP) и SAP Office - сюда
Вопросы по miniSAP (SAP mini basis) - сюда
Вопросы по SAP HANA - сюда
Вопросы по лицензированию продуктов SAP - сюда



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Удаление задвоенных записей, мешающих созданию уник.ключа
СообщениеДобавлено: Пн, ноя 15 2004, 14:45 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Вт, сен 21 2004, 16:30
Сообщения: 609
Пол: Мужской
При установке 4.7 set 2.0 на юниксе, получились задвоенные записи в некоторых таблицах, что не позволяет создать уникальные ключи на этих таблицах. Есть нота которая позволяет находить и удалять записи с сохранением нужной записи с ROWID.
Но если в таблицах много записей вручную по этой ноте не прокатывает.
Требуется следующая помощь.
Нужет SQL скрипт для sqlplus, такой чтобы брал только одну любую запись по полям, по которым строится уникальный ключ, а прочие удаляет. Нужно перезаписать правильно таблицу.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 15 2004, 16:07 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Вт, сен 21 2004, 16:30
Сообщения: 609
Пол: Мужской
Казалось бы разумно, сперва создать таблицу, определить индексы а затем уже загружать данные. Тогда бы задвоенные записи отсеялись бы. Вот чем руководствовались писатели скриптов?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 15 2004, 16:47 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, авг 27 2004, 09:10
Сообщения: 614
Откуда: Moscow
вроде б так лечится:
A common problem that many DBAs and programmers face is trying to purge duplicate rows from a single table. These rows may have been inadvertently (re)imported by the DBA, or mistakenly created by a rogue application program.

The following example shows a particularly efficient way to delete duplicate records from a table. It takes advantage of the fact that a row's ROWID must be unique.

DELETE FROM emp E
WHERE E.rowid > ( SELECT MIN(X.rowid)
FROM emp X
WHERE X.emp_no = E.emp_no );
:wink:
ну соответственно твои таблици и условие
удачи :wink:

_________________
по прозвищу Тосманский Дьявол


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Удаление задвоенных записей, мешающих созданию уник.ключ
СообщениеДобавлено: Пн, ноя 15 2004, 16:58 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Пт, авг 27 2004, 09:10
Сообщения: 614
Откуда: Moscow
Склеротик написал:
... Есть нота которая позволяет находить и удалять записи с сохранением нужной записи с ROWID.
...

А вот номерами нот неплохо было бы делиться :wink:

_________________
по прозвищу Тосманский Дьявол


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, ноя 15 2004, 17:02 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Вт, сен 21 2004, 16:30
Сообщения: 609
Пол: Мужской
СПАСИБО!!! А то у меня в голове уже все перемешалось АБАП забил в голове истинный SQL.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB