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

Вниз

Запрет дублирующихся записей   Найти похожие ветки 

 
russko ©   (2004-03-30 09:29) [0]

Такой вопрос: каким образом можно перед добавлением строки в БД установить проверку на наличие такой записи в БД. Особенность заключается в том что проверять надо не один столбец, а 2 и больше.


 
Vlad ©   (2004-03-30 09:36) [1]


> проверять надо не один столбец, а 2 и больше.

А что, в парадоксе составных уникальных ключей нету ?

Тогда можно с помощью запроса.

if Query1.IsEmpty then //разрешаем добавление

Соответственно в Query1 даем запрос на выборку записи, которая удовлетворяет введенным пользователем значениям.


 
Vovchik_A ©   (2004-03-30 10:36) [2]

2russko ©   (30.03.04 09:29)
Сделай уникальный составной ключ по этим двум полям(и больше)полям


 
Anatoly Podgoretsky ©   (2004-03-30 10:52) [3]

В этом случае напрашивается не уникальный вторичный индекс, а первичный ключ.


 
Курдль ©   (2004-03-30 11:24) [4]

Когда вариант с уникальными ключами не подходит (возможны исключения), то воспользуйтесь элементарным запросом:

select 1
from TABLE_NAME
where FIELD1 = :VALUE1 and FIELD2= :VALUE2 and ... FIELDn = :VALUEn

Если вышеописанный запрос вернет 1, значит такая запись уже есть, если Null, значит можно вносить.

ЗЫ: Это был Structured Query Language :)


 
Anatoly Podgoretsky ©   (2004-03-30 12:00) [5]

Если запись есть,то придется все равно делать ручное исключение, не удалять же втихую?



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

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

Наверх




Память: 0.48 MB
Время: 0.029 c
14-1080581287
Fog
2004-03-29 21:28
2004.04.25
Вопрос к олимпиаде по информатике...


4-1074510385
Oyster
2004-01-19 14:06
2004.04.25
Какой диалог подстраивается под язык системы?


1-1081618411
AsD
2004-04-10 21:33
2004.04.25
Список файлов


8-1073508949
Балу
2004-01-07 23:55
2004.04.25
Медиаплеер на основе Bass


3-1080547927
Rule
2004-03-29 12:12
2004.04.25
Я в расстеряности, что деласть со связаными таблицами в IBX????