Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Непонятки с счетчиком [D6, dBase, FoxPro]


Sharn ©   (2008-01-10 21:31:00) 

Ситуация:
Есть 50 записей в таблице. Запросом добаляю ещё одну. Записей 51. Делаю выборку по этой таблице select *...
Через AdoQuery. Хочу вытащить последнюю запись:
DataModule3.ADOQueryDVK.Last;
Kod:=DataModule3.ADOQueryDVK.fieldbyname('код').AsString;
В код Kod попадает данные из 50 записи..
Далее происходит ошибка так как данные Kod должны попасть в другую таблицу, а там уже есть данные из 50..
Перезапускаю программу, все по новой. в Таблице 52 записи, выборка, и опять в Kod попадают данные из 50 записи..
Никаких сортировок и прочего, код это счетчик.
Все это испраляется очисткой базы :) но хотелось узнать как этот баг недопустить :) уже второй раз так выскакивает.


Anatoly Podgoretsky   (2008-01-11 00:19:00) [1]

> Johnmen  (10.01.2008 23:41:03)  [3]

В dBase известно, начиная с 7


Johnmen   (2008-01-10 23:41:00) [2]

Азы теории БД говорят, что такого понятия, как "порядок" записей таблицы не существует.
Но получаемый запросом НД м.б. упорядочен, о чем уже сказали.
А в целом, для получения последнего актуального значения счетчика используются др. методы, зависящие от типа БД.
Что такое счетчик в дибейсе или фоксе науке не известно :)


Desdechado   (2008-01-10 22:52:00) [3]

ORDER BY не забывай.
Сервер имеет права вернуть записи в произвольном порядке, если ты не просишь сортировать.


Евгений Р.   (2008-01-10 21:34:00) [4]

Не работал с ADO, но может там есть что-то типа commit


Наверх

Титульная страница Поиск, карта сайта Написать письмо