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

Вниз

INSERT/UPDATE в одном флаконе   Найти похожие ветки 

 
Piter ©   (2004-02-12 17:29) [0]

Нельзя ли как-нибудь объединить комманды INSERT и UPDATE? Дело в том, что есть уникальное поле Number в таблице. А кроме него ну допустим есть еще поля Rabota и Zarplata. Так вот я передаю запись, состоящую из полей Number, Rabota, Zarplata. Если запись с Number уже существует, то он должен переписать значение Rabota и Zarplata. Если нет - то добавить новую запись.
Сейчас приходится делать SELECT, чтобы узнать есть ли запись с таким Number уже. Если есть - делать UPDATE, нету - INSERT.

Я вот думаю о логике базы. Она выполняет SELECT, просматривая таблицу. На это уходит время, особенно если таблица большая. Потом если я делаю UPDATE ей опять приходится искать запись, которую надо обновить (а это ведь таже самая запись!). То есть, два раза ищется одно и тоже! А зачем? Вот нельзя ли как-то это совместить. Нашла такую запись - сразу обновила. Не нашла - добавила?


 
Sandman25 ©   (2004-02-12 17:31) [1]

Используйте хранимую процедуру, если Ваша СУБД их поддерживает.


 
Johnmen ©   (2004-02-12 17:40) [2]

Делай инсерт. Если ошибка, то апдейт...



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
3-43376
Floppy
2004-02-14 19:56
2004.03.14
Удаление записи (ей) в TADOTable


3-43287
XAdmin
2004-01-23 13:36
2004.03.14
ADOCommand Error Размер поля недостаточен


3-43302
SPIRIT
2004-02-17 15:21
2004.03.14
GROUP BY не работает


3-43323
SasaR
2004-02-16 12:12
2004.03.14
TClientDataSet - нужны DLL


4-43959
Zin
2004-01-05 13:57
2004.03.14
Как прочитатать кластер или сектор на диске под NTFS?