Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как проверить существует ли заданная запись в базе? [D7]


Руслан ©   (2004-08-12 15:09:00) 

Есть база MS Acces , во втором столбце хранятся уникальные  записи типа   O48424490308041645. Как проверить перед добавлением следующей записи не существует ли уже такая же? Надо просто знать да или нет...


сергей1   (2004-08-12 16:28:00) [1]

тебе верно советуют, используй исключение, если работаешь с  ADOQuery пиши обработчик на ADOQuery1PostError, там в параметре E содержится вся инфа об ошибке, для отмены действия есть специальный оператор abort.
зачем велосипед изобретать, все продумано задолго до нас !


Sergey13   (2004-08-12 15:43:00) [2]

Попробуй, но исключение, ИМХО, лучше. Тем более, как я понял, если уже есть то надо просто не вставлять. При вставке все равно будет эта проверка.


Руслан   (2004-08-12 15:39:00) [3]

Спасибо! Попробую


Sergey13   (2004-08-12 15:29:00) [4]

select count(*) count_cod from table
where cod=:cod
Если count_cod=0 вставляй.


Руслан   (2004-08-12 15:27:00) [5]

К сожалению вероятность велика...очень. Но база не большая <2000 записей


Sergey13   (2004-08-12 15:25:00) [6]

2[6] Руслан   (12.08.04 15:20)
Какова вероятность повтора? Если не очень велика, то дешевле и производительнее ловить исключение, чем лопатить все каждый раз.


Руслан   (2004-08-12 15:20:00) [7]

Новое значение поступает извне в виде строки. И перед тем как добавлять в базу надо проверить - может вчера уже добавляли....


Ega23   (2004-08-12 15:18:00) [8]

А подробнее можно?

Не знаком с диалектом Access, но наверняка что-то подобное должно быть.


Sergey13   (2004-08-12 15:17:00) [9]

2Руслан   (12.08.04 15:09)
Как у тебя новое значение формируется?


Руслан   (2004-08-12 15:15:00) [10]

>Ega23 ©   (12.08.04 15:13) [2]

>Exists ?

А подробнее можно?


Ega23   (2004-08-12 15:13:00) [11]

Exists ?


Sergey13   (2004-08-12 15:12:00) [12]

Вставляй не думая. Если есть такая лови исключение.


Наверх

Титульная страница Поиск, карта сайта Написать письмо