![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Привет друзья. У меня такой вопрос, как из БД (paradox) удалить все ОДИНАКОВЫЕ записи, и оставить только одну.
|
|
#2
|
||||
|
||||
|
Вообще неверный вопрос. А собственно почему у вас появились дубликаты записей? При правильной организации таблиц, дубликатов быть не может.
А вообще маловато инфы, неясно какие поля в таблице содержат одинаковые данные. |
|
#3
|
||||
|
||||
|
Цитата:
|
|
#4
|
||||
|
||||
|
А не проще перед добавлением проверить, не имеется ли уже такая запись в таблице?
|
|
#5
|
||||
|
||||
|
Цитата:
|
|
#6
|
||||
|
||||
|
Варианта два.
1. Добавить к таблице уникальный индекс по урлу и обрабатывать ошибку дубликата записи. 2. Всякий раз перед добавлением проверять запросом наличие имеющегося адреса в таблице. |
|
#7
|
||||
|
||||
|
2. Всякий раз перед добавлением проверять запросом наличие имеющегося адреса в таблице.
Как раз самое, то. Проверять запросом имеешь ввиду SQL? Можешь пример запроса показать? |
|
#8
|
||||
|
||||
|
Триггеры используй.
Ну на крайняк (составной) уникальный ключ. |
| Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
borockov (09.04.2013)
| ||
|
#9
|
||||
|
||||
|
Тригер конечно можно, главное что-бы база знала, что это за зверь такой.
![]() Парадокс о них точно ничего не слыхал. Пример запроса? Ну вот вам примерчик: Код:
Query1.SQL.Text := 'select id from Table1 where adres_url=:Param1';
Query1.Params.ParamValues['Param1'] := 'http://www.delphisources.ru';
Query1.Open;
if Query1.isEmpty
then begin
//тут вы добавляете запись в таблицу
end; |
| Этот пользователь сказал Спасибо Страдалецъ за это полезное сообщение: | ||
borockov (10.04.2013)
| ||
|
#10
|
||||
|
||||
|
Пардон, проглазел, что ТС рападокс использует.
|
|
#11
|
||||
|
||||
|
Ура! Работает, спасибо ))) друзья!
|