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

Вниз

Инсерт   Найти похожие ветки 

 
Alek ©   (2004-08-21 14:21) [0]

У меня в бд нужно вставить кучу новых записей в одной процедуре.
Сейчас я вставляю их так:

Dm1.IBDataSet1.Close;
DM1.IBDataSet1.SQL.Clear;
DM1.IBDataSet1.SQL.Add("insert into SOOTV_ZAPCHAST Values ("""+IntToStr(id2)+""","""+IntToStr(ids[i])+""") ");
DM1.IBDataSet1.Open;
Dm1.IBDataSet1.Close;
DM1.IBDataSet1.SQL.Clear;
DM1.IBDataSet1.SQL.Add("insert into SOOTV_ZAPCHAST Values ("""+IntToStr(ids[i])+""","""+IntToStr(id2)+""") ");
DM1.IBDataSet1.Open;
и т.д.

Можно ли както сделать один запрос который вставит нужные мне записи?? а то так слишком много времени уходит


 
Desdechado ©   (2004-08-21 15:25) [1]

1. все в одной транзакции
2. не Open, а ExecSQL
3. использовать параметры
4. сделать Prepare перед первым выполнением, но после присваивания SQL.Text
5. можно на время добавления отключить индексы



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

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

Наверх




Память: 0.46 MB
Время: 0.032 c
4-1091865374
Ded Moroz
2004-08-07 11:56
2004.09.19
Timer, Ticks


3-1093380738
ceval
2004-08-25 00:52
2004.09.19
Подскажите как заменить ADOTable на ADOQuery


1-1094532933
BillyJeans
2004-09-07 08:55
2004.09.19
override private метода...


4-1091483639
CAMCOH
2004-08-03 01:53
2004.09.19
Timer в Service Application


11-1080647045
Viner
2004-03-30 15:44
2004.09.19
PBitMap