Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.03.04;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.01 c
6-1253001555
ABolnykh
2009-09-15 11:59
2012.03.04
Как использовать TIdLogFile с серверами в Indy9?


15-1321449825
aka
2011-11-16 17:23
2012.03.04
Движение объектов по форме


15-1320611403
Юрий
2011-11-06 23:30
2012.03.04
С днем рождения ! 7 ноября 2011 понедельник


1-1287499849
Cancel
2010-10-19 18:50
2012.03.04
трек GPS навигатора формат MPS


2-1318082533
БезымянныйСтудент
2011-10-08 18:02
2012.03.04
Где в таком случае делать try?