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

Вниз

ADO Слетает позиционирование при добавлении и при работе с 2 табл   Найти похожие ветки 

 
Начинающий в АДО   (2002-12-15 13:27) [0]

Всем добрый день.
Недавно начал работать с АДО, проэтому прошу не бить если
вопросы детские. В поиски и в хелпе искал - не нашел.

итак, вопрос номер раз.

После
<ADOTable>.Insert
<задание значений полей>
<ADOTable>.Post

курсор становится на 1-ую. запись. Как его оставить на новодолбавленной, чтобы например считать значаение PrimaryKey
у новодобавленной записи?

вопрос номер второй :-)

Есть цикл "пока не EOF" по первой таблице
внйтри этого цикла я применяю фильтрацию к совершенно
другой таблице, никак не связанной с первой.

на форме есть элементы TDBEdit , которые через
обычынй TDataSource сморят на первую таблицу.

так вот, если при работе цикла у этого
DataSource.Enabled = True, то смена фильтра
второй таблицы приводит у уставке курсора первой
таблицы на первую запись!! %/. и естественно все
зацикливается.
если же перед циклом сделать DataSource.Enabled = False
то все нормально работает.

таблицы смотрят на одно ADOConnection.

это глюк или я чего то не знаю?

З.Ы.
из патчей установил общеизвестный ADO_PATCH.EXE,
тот который на королевстве и вообще везде :) валяется.

все сказанное проявляется по версиями виндов 98, 2000 и ХП.

очень надеюсь на помощь.
спасибо заранее!


 
Начинающий в АДО   (2002-12-15 23:30) [1]

хм, не понятно - либо я задал слишком глупый вопрос,
либо никто с этим не сталкивался? однако не верится,
что при работе с АДО никто не наткнулся на подобные
проблемы позиционирования...

надеюсь на конструктивные ответы ...


 
sniknik ©   (2002-12-15 23:44) [2]

Вопрос действительно немного... филосовский. На тему есть ли у таблиц в базе порядковый номер.

лутше всего PrimaryKey делать по автоинкременту (тоже вопрос лутше ли? многим не нравится), тогда результ (по смыслу вопроса) достигается в 2 запроса.
1
INSERT INTO (поля исключая автоинкрементное) VALUES (значения для них)
2
SELECT @@IDENTITY

(для MSSQL можно в одном пакете оба запроса)

чтобы правильно задать вопрос нужно знать половину ответа (как минимум)
http://delphi.mastak.ru/vopros/index.html


 
ПИТОН   (2002-12-16 06:50) [3]

Порсле поста делай Loacte по ключевому полю


 
sniknik ©   (2002-12-16 10:45) [4]

to ПИТОН (16.12.02 06:50)
ценное замечание :о), только как согласуется с
>>>
Начинающий в АДО (15.12.02 13:27)
>чтобы например считать значаение PrimaryKey у новодобавленной записи?

он же не знает значения по которому локейт делать.


 
Начинающий в АДО   (2002-12-17 03:46) [5]

оказалось что прекрасно работает все только под
Аксесс 2000, о чем есть статья на Королевстве
(нашел таки ...)

2
sniknik © (15.12.02 23:44)

1. при чем тут MS-SQL?
2. не понял, че тут философского - глюка чистой воды.
да и не порядковый номер мне нужен, а поле новодобавленной
записи. имхо, Вы не совсем внимательно прочли что я написал :-)

но все равно спасибо. всем.



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

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

Наверх




Память: 0.48 MB
Время: 0.015 c
3-24786
ramil
2002-12-14 16:24
2003.01.09
Multiple records found but only one expected...


3-24765
kav
2002-12-15 10:43
2003.01.09
Как победить тормоз в ADO?????


3-24800
GBX
2002-12-15 23:48
2003.01.09
Недоступен сетевой диск.


1-24949
Lynxy
2002-12-26 15:56
2003.01.09
Как преобразовать Extended в String с заданным значением символов


14-25018
id_privin
2002-12-18 18:25
2003.01.09
На что я могу рассчитывать?