![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Переиндексация.... [Paradox]
z_1 © (2002-06-05 23:25:00)Мастера...HELP!!!
Индексные файлы при сбоях могут наворачиватся. Но я нигде не смог найти информацию как они могут востанавливатся
Кто знает, как восстановить индексы у файлов
*.db пожалуйста, откликнитесь.
VICTOR_ (2002-06-06 12:53:00) [1]Сообщение не выдается, просто закрывается окно.
Далее
VICTOR_ (06.06.02 11:26)
>скопируй *.db, *.px, *.xg? , *.yg? в рабочую программу
z_z (2002-06-06 12:35:00) [2]ясно.....
спасибо....
да еще когда сделаешь Save сообщение что все восстановилось будет??
VICTOR_ (2002-06-06 12:31:00) [3]Таблицу брать не надо, береш только индексы
VICTOR_ (2002-06-06 12:19:00) [4]С любой копии твоей базы до того как она испортилась
z_z (2002-06-06 12:16:00) [5]VICTOR_
Это наверно самый глупый вопрос будет но где взять пустую таблицу??
VICTOR_ (2002-06-06 12:09:00) [6]С любой, незапорченной береш индексы для своей таблицы(лучше всего с пустой)
z_z (2002-06-06 11:48:00) [7]VICTOR_
открыл...
> 3.Если имееш любую копию индексов *.px, *.xg? , *.yg?(незапорченную,
> желательно от пустой базы), то попробуй:
можно абсолютно с любой базы взять..??
VICTOR_ (2002-06-06 11:26:00) [8]1.С кодировками помогает только резервная копия(по моему опыту)
2.Сначала попробуй найти файлы *.lck на локальных дисках и всех их удали. Возможно, это решит твою проблему.
3.Если имееш любую копию индексов *.px, *.xg? , *.yg?(незапорченную, желательно от пустой базы), то попробуй:
-скопируй файлы *.db, *.px
-подкинь к нему *.xg? , *.yg?(чистые)
- зайди в DATABASE DESKTOP
- открой таблицу File-Open-Table (если файл не открывается, то подкинь чистый *.px и попробуй повторить)
- зайди в меню Table-Restucture
- поставь галочку PackTable
- Save
- Если все успешно, то скопируй *.db, *.px, *.xg? , *.yg? в рабочую программу
z_z (2002-06-06 11:16:00) [9]VAleksey
Знаю, нашел какие рухнули....Какие мои дальше действия??
Помогите!
VAleksey (2002-06-06 08:42:00) [10]ааа, так ты не знаешь какие индексы рухнули ?
Ну тогда никак. DBD не поможет, но открыть таблицу ты сможешь (без индексов), если выполнишь 1-й пункт VAleksey © (06.06.02 08:37)
VAleksey (2002-06-06 08:37:00) [11]короче, щас я немного не в себе сижу > ничего не читал > извините если повторяюсь.
Для *.db нет ничего проще, чем восстановить индексы. Удаляй в БД файлы *.px , и потом восстанавливай индексы тривиальным Table1.AddIndex.
PS
Описание индексов можно хранить во внешней таблице.
Dennn_is (2002-06-06 08:02:00) [12]Регенерация индексов таблицы Базы Данных (проверялось только на файлах DBF)
Нужно подключить модули :
DBTables, DB, dbiProcs,DbiErrs,dbiTypes;
Здесь, если NrErr>0 , то вывод на экран сообщения об ошибке (если была ошибка).
function TableRegenIndexes(NrErr : byte;Tbl : TTable) : Boolean;
Var
YesEx,YesAct : byte;
S : String;
Res,Res1 : DBIResult;
CCC : array[0..255] of Char;
begin
YesEx:=0;
if Tbl.Exclusive then YesEx:=1;
YesAct:=0;
if Tbl.Active then YesAct:=1;
Tbl.Active:=FALSE;
Tbl.Exclusive:=TRUE;
Tbl.Active:=TRUE;
Res:=DbiRegenIndexes (Tbl.Handle);
Tbl.Active:=FALSE;
if YesEx<=0 then Tbl.Exclusive := FALSE;
if YesAct>0 then Tbl.Active:=TRUE;
if Res=0 then begin
Result:=TRUE;
end
else begin
if NrErr>0 then begin
Res1:=DbiGetErrorString (Res,CCC);
Str(Res,S);
S:="Ошибка реген.индекс.: "+S+" -> "+StrPAS(CCC)+" для : "+Tbl.TableName;
MessageBeep(mb_IconHand);
MessageDlg(S,mtError,[mbOk],0);
end;
end;
end;
z_z (2002-06-06 00:47:00) [13]Anatoly Podgoretsky...
что то я вобще не пойму ничего..((как определить который порушен?
да еще с кодировками проблемы...((
Anatoly Podgoretsky (2002-06-06 00:40:00) [14]Пункт Pack Table
Anatoly Podgoretsky (2002-06-06 00:38:00) [15]В перестройке порушенных индексов, согласно твоего вопроса, DBD эту функцию делает
z_z (2002-06-06 00:29:00) [16]Anatoly Podgoretsky
Извеняюсь за глупый вопрос но в чем заключается ремонт?
Anatoly Podgoretsky (2002-06-06 00:02:00) [17]Так тебе не программировать нужно, а ремонтировать.
Запусти Datanbase Desktop
z_z (2002-06-05 23:53:00) [18]Anatoly Podgoretsky
я извиняюсь, но в БД я новичок...
испортился один somefile.db и как его востановить я не знаю((
а до завтра нужно...по шеи надают...
даже чем пользоваться не знаю..((
Помогите...плиз..
Anatoly Podgoretsky (2002-06-05 23:44:00) [19]Ты хелп и пример смотрел, что в нем непонятно?
z_z (2002-06-05 23:35:00) [20]app...
а по подробнее....
у меня есть файл *.db как востановить связи...
если не трудно, что как и куда...
За ранее спасибо...