Відновлення бази даних
Питання потрібно вирішити терміново (протягом години). Прохання дати хоча б посилання на якусь утиліту з відновлення баз даних Парадокс.
на борланді була пошукай там за ключовими словами
А взагалі для спрощення подібних маніпуляцій треба мати копію порожньої бази (файлів таблиць), що містить все бізнес-логіку (якщо це слово застосовно до локальних БД), звідки вибирається потрібна таблиця, що "злетіла", що замінює "хвору" з подальшим завантаженням даних з вивантаженої зазначеним вище методом таблиці.
І ще. Обов'язкове збереження всієї БД в архівах після завершення роботи з нею в кінці робочого дня. ЩОДЕННО! А іноді й у перерві на обід.
Індекс перебудовував? 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)!
Загалом, година закінчилася. Клієнту ми вже повідомили, що дані втрачені безповоротно (щоб не мучився в марних очікуваннях :-) Дякую всім!
Є хмара замовників.Тепер готуйся до скарг і від них.
> Тепер готуйся до скарг і від них.
Щодня відбиваємось :-)
> Інавряд чи якийсь оператор поліз би вручну видаляти > записи таблиці.У діалозі видалення запису за замовчуванням чи не варто, випадково, підтвердження видалення? І тоді достатньо "залипнути" Введення при фокусі на кнопці видалення та . понеслося: (