Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.022 c
3-1093228607
Lizka
2004-08-23 06:36
2004.09.19
String via VarChar2


1-1093955952
IXT
2004-08-31 16:39
2004.09.19
Dll


3-1092802109
Марат
2004-08-18 08:08
2004.09.19
Ошибка в DBGrid


3-1092913938
V-A-V
2004-08-19 15:12
2004.09.19
Контейнер для хранения тексов SQL запросов


4-1091435646
Unknown Mystic
2004-08-02 12:34
2004.09.19
MsgWaitForMultipleObjects




   Наверх