Вниз
Скачать: CL | DM;

SQL   Найти похожие ветки 

 
Сашка   (2001-12-20 20:11) [0]

Добавляю в БД новую запись. Так вот мне нужно проверить: если она уже внесена в таблицу, то не вносить её. Как мне лучше всего это сделать?


 
Anatoly Podgoretsky ©   (2001-12-20 20:54) [1]

С помощью функции
SELECT Count(*) From xxx where условие


 
Boo ©   (2001-12-20 21:01) [2]

>Anatoly Podgoretsky
XXX - енто было круто :-)
только я вот думаю, чеку надо было енто на уровне базы

>Сашка
или я не прав?


 
Сашка   (2001-12-20 21:20) [3]

>Boo
Да, ты прав.


 
Boo ©   (2001-12-20 21:30) [4]

>Сашка
А вот в ентом почом врядли смогу (юзаю MSSQL), но может моно использовать уникальный ключ (индекс), содержащий ВСЕ поля таблицы...
А может я и глупость сморозил...


 
panov ©   (2001-12-20 21:31) [5]

>Boo © (20.12.01 21:01)
>Сашка (20.12.01 21:20)
Анатолий Подгорецкий дал вполне исчерпывающий ответ.


 
Boo ©   (2001-12-20 21:32) [6]

>panov
Я в курсе, что исчерпывающий ответ (для клиента), а вот всетаки на уровне базы моно что-нибудь сделать?


 
panov ©   (2001-12-20 21:38) [7]

Что значит "на уровне базы" ?


 
Boo ©   (2001-12-20 22:03) [8]

> panov
в SQL-серваке (в частности MSSQL) - триггеры, или нечто подобное (индексы), а то вдруг в проге надо делать море запросов с такими ограничениями...


 
SergVlad ©   (2001-12-20 23:35) [9]

> Boo
Не морочай людям голову индексами подобными триггерам.
Вопрос по Парадоксу был.
Но кое в чем ты прав.
Использование ответа Подгорецкого - источник сбоев при многопользовательской работе.
За время между "SELECT.." и скажем "UPDATE.." другой пользователь может
добавить аналогичную запись.
Поэтому более правильным является использование уникального индекса
по нужным полям и отлавливание exception.


 
Boo ©   (2001-12-20 23:46) [10]

А я ведь знал, знал...



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.006 c
1-75584
Андрей Сенченко
2002-01-05 13:50
2002.01.24
Помогите с ловлей Handl-ов


1-75541
ЗЛОБНЫЙ КАРЛИК
2001-12-25 08:26
2002.01.24
TRichEdit ПОМОГИТЕ!!!


1-75591
Dmitriy_R
2002-01-07 17:39
2002.01.24
Ну неужели никто не знает как брать данные из ListView и класть их куда надо.


14-75657
Serega__2
2001-11-29 10:40
2002.01.24
Господа, а что с rxlib`ом случилось?


4-75712
maxi
2001-11-24 12:04
2002.01.24
как узнать список дочерних окон процесса ?




   Наверх