Автор | Сообщение |
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 04.02.10 20:42. Заголовок: Число строк
Всем, привет ! Можно ли в DBF определить число строк помеченных на удаление ?
|
|
|
Ответов - 4
[только новые]
|
|
|
| |
Пост N: 67
Зарегистрирован: 01.01.10
|
|
Отправлено: 04.02.10 21:14. Заголовок: Я просматриваю dbf ф..
Я просматриваю dbf файл функцией DBEVAL и подсчитываю записи, для которых функция DELETED() - .T., примерно так: nCountDel := 0 DBGOTOP() DBEVAL({||IIF(DELETED(), nCountDel ++,)}) может быть можно и по другому, не знаю.
|
|
|
|
| постоянный участник
|
Пост N: 822
Зарегистрирован: 09.10.06
|
|
Отправлено: 04.02.10 21:21. Заголовок: ИМХО в цикле с помощ..
ИМХО в цикле с помощью Deleted() или DbRecordInfo( DBRI_DELETED, .. ) // The example uses DbEval() to determine the number of deleted records // in a database to calculate the space that could be freed with PACK. PROCEDURE Main LOCAL nCount := 0 USE Customer NEW DbEval( {|| nCount++ }, ; {|| Deleted() } ) ? "File size could be reduced by", 100*nCount/Lastrec(),"percent" CLOSE Customer RETURN
|
|
|
|
| |
Не зарегистрирован
Зарегистрирован: 01.01.70
|
|
Отправлено: 05.02.10 02:51. Заголовок: Можно, конечно, и та..
Можно, конечно, и так.. Однако, ведение доп. индекса типа iif(deleted(),1,0) мне кажется изящней
|
|
|
|
| |
Пост N: 3
Зарегистрирован: 16.12.08
|
|
Отправлено: 05.02.10 12:12. Заголовок: Можна поставить инде..
Можна поставить индекс : INDEX ON nam_idx TAG delet_recs FOR DELE() Можна подсчитать : SELECT <table> COUNT TO nDeletedRecs ALL FOR DELETED() GO TOP
|
|
|
|