Відновлення бази даних

Питання потрібно вирішити терміново (протягом години). Прохання дати хоча б посилання на якусь утиліту з відновлення баз даних Парадокс.

на борланді була пошукай там за ключовими словами

А взагалі для спрощення подібних маніпуляцій треба мати копію порожньої бази (файлів таблиць), що містить все бізнес-логіку (якщо це слово застосовно до локальних БД), звідки вибирається потрібна таблиця, що "злетіла", що замінює "хвору" з подальшим завантаженням даних з вивантаженої зазначеним вище методом таблиці.

І ще. Обов'язкове збереження всієї БД в архівах після завершення роботи з нею в кінці робочого дня. ЩОДЕННО! А іноді й у перерві на обід.

Індекс перебудовував? DBDOCTOR/TUTIL32.DLL пошукай

Я досить коректно вказав на те, що пошкоджено файл таблички Парадокс.

> І ще. Обов'язкове збереження всієї бази даних в архівах після завершення > роботи з нею в кінці робочого дня. ЩОДЕННО! А іноді > і в перерві на обід.

Якби БД розробляв я, то, мабуть, так би й зробив. АЛЕ! БД розроблялася не мною. І взагалі дарма її робили на DBE. Аж надто вже ненадійна ця СУБД.

Завантажив утилітку tutil32.exe. Скопіював до неї в татку файл пошкодженої таблички (*.db only). Вона мені показує, що табличка не містить жодних помилок. Хоча в самій таблиці 611 записів, а відображається всього 55 записів (зараз підрахував).

З якого часу BDE стала СУБД?

> З якого часу BDE стала СУБД?

Давайте спочатку допоможіть вирішити проблему, а потім чіпляйтеся до слів скільки влізе.

> Хоча в самій таблиці 611 записів, а відображається всього 55 записів (зараз підрахував). Відкрий іншими засобами.

ці тийни е представляють? зайшли таблицю разом із ключем/індексами.подивлюсь (і порахую) на іншій машині.

> Вона мені показує, що табличка не містить жодних помилок. А в індексах? перетвори.

Схоже сьогодні відновити не вийде (робочий день закінчується :)

> відкрий іншими засобами.

Відкривав такими засобами, як - Database Desktop - SQL Navigator (у ньому використовуються стандартні компоненти Delphi)

> дані тийни е представляють?

Таємниці ніякої не уявляють, там зберігаються записи початку та закінчення змін роботи операторів АЗС. На основі цих даних будуються різні звіти.

> зайшли таблицю разом із ключем/індексами. подивлюсь (і порахую) > на іншій машині.

У своєму першому пості вказав – індекси перевір. А якщо вже взяв TUTIL32, то кидай не тільки *.DB, а й усі індексні (*.PX, *.X. *.Y. *.VAL)

Витягти в приципі можна спробувати. але не за годину, і навіть не за дві. (є десь вихідник парадокс, що читає, треба знайти і поправити на читання таблиці як тексту без урахування видалений запис/сторінка чи ні. Моторно загалом. ну або пошукати таке готове)

> таблиця схоже робоча, і індекси теж просто записи видалені, > але ще не упаковані

Схоже на те. Що найцікавіше, записи ніхто видалити в принципі не міг (тим більше наша система). І навряд чи якийсь оператор поліз би вручну видаляти записи таблиці. Аномалія, млинець (або глюк BDE)!

Загалом, година закінчилася. Клієнту ми вже повідомили, що дані втрачені безповоротно (щоб не мучився в марних очікуваннях :-) Дякую всім!

Є хмара замовників.Тепер готуйся до скарг і від них.

> Тепер готуйся до скарг і від них.

Щодня відбиваємось :-)

> Інавряд чи якийсь оператор поліз би вручну видаляти > записи таблиці.У діалозі видалення запису за замовчуванням чи не варто, випадково, підтвердження видалення? І тоді достатньо "залипнути" Введення при фокусі на кнопці видалення та . понеслося: (