Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Corrupt file - other than header [D5, D6, Paradox]


Vitek_m ©   (2002-05-14 13:29:00) 

Есть база данных Paradox. Повреждён заголовок - Corrupt file - other than header. Ктонибудь может подскажет есть ли какая утилитка для востановления повреждённых db файлов.


Григорий   (2002-05-15 09:14:00) [1]

Да, забыл. Всё это надо делать только если таблица вообще не открывается DataBase Desktop. И лучше вместо нового файла использовать какую-нибудь архивную копию сломавшегося файла.


Григорий   (2002-05-14 22:48:00) [2]

SQL-ем не пробовал но всегда делал так:
Начало как у верхнего товарища

> Создать DB с идентичной структурой и копирнуть ёё следующим
> SQL в SQL Explorere:

а затем в цикле для созданной табличе делаешь.

while not table.recordcount<1000 do begin
table.append;
table.post;
end;

надо чтобы размер новой таблицы был >= размеру старой.
потом след. программка.

var Fi,Fo:File;
S:String;
begin
AssignFile(Fi,"NewTable.db");
Reset(Fi,1);
AssignFile(Fo,"OldTable.db");
Reset(Fo,1);
SetLength(S,2000);
BlockRead(Fi,S[1],2000);
BlockWrite(Fo,S[1],2000);
CloseFile(Fi);
CloseFile(Fo);
end;

А потом копируешь данные из старой таблицы в другую или DataBase Desktop-ом или опять-же методом Sandman.


Sandman   (2002-05-14 21:19:00) [3]

Можно поступить следуюющим образом.
Создать DB с идентичной структурой и копирнуть ёё следующим SQL в SQL Explorere:

Insert Into "EmptyNew.db"
Select * From "CorrupedOld.db"

Возможно оно будет матом крыть, но ты всё это игнорирен, возможно пару записей отвалится, но резалт позитивный должен получиться


Наверх

Титульная страница Поиск, карта сайта Написать письмо