Форум OlegON > > >

Подскажите как востановить хотя бы часть поврежденной таблицы btr

15.12.2019 19:38


09.12.2010 22:11
litlemil
 
в частности ckpays.btr
09.12.2010 22:48
vitamin
 
точно не уверен, но помоему btrcopy.exe из каталога ddf с ключом v может поможет. ключ не помню , вызов btrcopy.exe /? подскажет
09.12.2010 23:58
Snoring
 
Вызов: BTRCOPY <откуда> <куда>
[/s информация о файле]
[/v восстановление испорченного файла]
[/c клонирование файла]
[/режим (1-вперед; 2-назад)]
[/i:старт:размер (вставка) ]
[/f:старт:размер (очистка) ]
[/r:старт(откуда):старт(куда):размер (замена) ]
[/m:старт(куда):тип+значение (присвоение) ]
[/d (не удалять имеющиеся записи)]

Чтобы восстановить файл нужно выполнить::l_Pocket_PC:
1. переименовать ckpays.btr в ckpays.old
2. получить пустой файл такой же структуры выполнив клонирование
btrcopy ckpays.old ckpays.btr /c
или просто взять пустой файл из каталога ddf\data
3. скопировать все записи, которые можно прочитать в новый файл
btrcopy ckpays.old ckpays.btr

Для ленивых придуман ключ /v - восстановление в одно действие :soldier:
btrcopy ckpays.old ckpays.btr /v
Он хорошо работает когда сбой на последней странице файла или на страницах с индексами. Но копирование записей идет до первой ошибки!

Если в файле не все записи читаются, то можно на 3 шаге попробовать чтение с конца файла :ok:
btrcopy ckpays.old ckpays.btr /2

или комбинацию
btrcopy ckpays.old ckpays.btr
btrcopy ckpays.old ckpays.btr /2 /d
10.12.2010 14:21
litlemil
 
спасибо
Цитата:
btrcopy ckpays.old ckpays.btr /2
помогло, пропало несколько чеков, но это уже не так страшно...
зы еще раз спасибо, я еще только начинающий АСУшник
21.12.2010 14:21
Нико_
 
Я обычно восстанавливаю так: btrcopy.exe ckpays.old ckpays.btr /r:313
Восстанавливает только целые записи, ошибочные записи удаляются.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.