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

Вниз

Блокировки   Найти похожие ветки 

 
minva74   (2003-03-20 17:24) [0]

Не раз читал, что функция RecordCount очень не надёжная и лучше выполнить select count(*) from...
оцените ,правильно ли построена такая конструкция, а то я с блокировками ещё плаваю :-)
В одном ADOQuery получаем набор данных.
Следующей командой в ADOQuery1 получаем количество (Select Count(*) From …). Между этими командами теоретически в таблице можно что-то поменять, например запись добавить.
Поэтому делаю так:
Обе эти команды обрамлены
BeginTansaction

CommitTransaction

Запрос - select * from table WITH (TABLOCK HOLDLOCK) блокирует таблицу на запись на время транзакции. Если без HOLDLOCK то только на время выполнения команды select. Это я так понял?
Таким образом select count(*) вернёт верное число ,соответствующее кол-ву записей в первом запросе. Короче, как правильно ли я делаю?


 
Alexandr ©   (2003-03-21 07:38) [1]

repeatable read транзакция не поможет?


 
jocko ©   (2003-03-21 09:42) [2]

>Не раз читал, что функция RecordCount очень не надёжная и лучше >выполнить select count(*) from...

я тоже не раз читал, но ни разу не получилось в этом убедиться...


 
Dmitry Filippov ©   (2003-03-21 09:46) [3]

В IB компонентах RecordCount возвражает количество отфетченых записей, по этому чтобы не врал, нужно проверить Dataset.isSequensed, если false то FetchAll.



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
3-30279
volodya_
2003-03-20 11:12
2003.04.10
ADO DBF


1-30377
Михайлов Антон
2003-03-29 09:51
2003.04.10
MainMenu=>SubMenu


3-30240
Yura88
2003-03-20 15:53
2003.04.10
Как ComboBox в своей программе сделать выборку алиасов,


3-30251
Yuraz
2003-03-20 10:42
2003.04.10
Мост перекачки данных FoxPro > Oracle с помощью чего организовать


3-30232
Surgeon
2003-03-20 17:16
2003.04.10
Доступ к .mdb без изменения внешних параметров