Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.05;
Скачать: CL | DM;

Вниз

Как проверить существует ли заданная запись в базе?   Найти похожие ветки 

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

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


 
Sergey13 ©   (2004-08-12 15:12) [1]

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


 
Ega23 ©   (2004-08-12 15:13) [2]

Exists ?


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

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

>Exists ?

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


 
Sergey13 ©   (2004-08-12 15:17) [4]

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


 
Ega23 ©   (2004-08-12 15:18) [5]

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

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


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

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


 
Sergey13 ©   (2004-08-12 15:25) [7]

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


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

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


 
Sergey13 ©   (2004-08-12 15:29) [9]

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


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

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


 
Sergey13 ©   (2004-08-12 15:43) [11]

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


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

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



Страницы: 1 вся ветка

Текущий архив: 2004.09.05;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.026 c
14-1092513647
Andy BitOff
2004-08-15 00:00
2004.09.05
Проверьте пожалуйста адрес.


1-1092933826
alexts
2004-08-19 20:43
2004.09.05
Парсинг текстовых файлов


1-1093113173
Alek_1
2004-08-21 22:32
2004.09.05
Запуск приложения с параметрами


14-1091612846
Ricks
2004-08-04 13:47
2004.09.05
Анкета.....


4-1090655477
akvilon
2004-07-24 11:51
2004.09.05
UpdateRgn, PAINTSTRUCT, InvalidateRgn как с этим работать?