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

установить курсор в датасете после insert   Найти похожие ветки 

 
LDV   (2011-11-25 12:40) [0]

СУБД Paradox.

Есть Query1, связанный с DBGrid, который отображает содержимое некоторой таблицы . Нужно сделать, чтобы при добавлении новой записи INSERT-запросом (Query2), курсор в выборке Query1 выставлялся на добавленную запись. Как это правильно сделать?

Ничего лучше, чем нижеприведенный вариант, не придумал, но он мне кажется хреновым:


// ...
 Query2.SQL.Text := "INSERT INTO products (...) VALUES(...); SELECT @@identity";
// ...
 Query2.ExecSQL;
 ProductId := Query2.Fields[0].AsInteger;
 Query1.Locate("Id", ProductId, []);


 
Anatoly Podgoretsky ©   (2011-11-25 12:44) [1]

> LDV  (25.11.2011 12:40:00)  [0]

все интересное за точками спрятал, и как оно там в базе, нам не говоришь.


 
sniknik ©   (2011-11-25 12:48) [2]

зачем запрос на вставку при уже открытой таблице?


 
LDV   (2011-11-25 12:51) [3]


> зачем запрос на вставку при уже открытой таблице?


а как тогда, добавлять через append, post в открытом датасете?


 
Anatoly Podgoretsky ©   (2011-11-25 12:54) [4]

1. Интереснее хачем обращение к закрытой таблице Fields[0].AsInteger, а после ExecSQL оно закрыто

2. зачем обращение к необновленой таблице Query1.Locate, данные там старые, хотя может повезет


 
Anatoly Podgoretsky ©   (2011-11-25 13:00) [5]

С Парадоксом можно работать с таблицей, а не запросами, навигационными методами, а в некоторых случаях и нужно. Например получение автоинкриментного номера.



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

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



Память: 0.46 MB
Время: 0.005 c
2-1322215244
Aleks
2011-11-25 14:00
2012.03.04
Как определить событие OnClik в динамически созданном объекте Bu


11-1242734651
regnied
2009-05-19 16:04
2012.03.04
Поиск в глубину


15-1321342175
oleg1963lora
2011-11-15 11:29
2012.03.04
Анимация *.gif объектов


6-1235561131
MALAN
2009-02-25 14:25
2012.03.04
Как перехватить API функции (Connect, Bind) и изменить их парамет


2-1322133672
1234567890
2011-11-24 15:21
2012.03.04
проверить пуст ли датасет




   Наверх