Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

Как переиндексировать таблицы   Найти похожие ветки 

 
чайник1   (2004-02-16 12:09) [0]

Уважаемые мастера, делаю восстановление файлов из архива, как мне переиндексировать таблицы.Спасибо.


 
Anatoly Podgoretsky ©   (2004-02-16 12:11) [1]

dbiRegenIndexes


 
чайник1   (2004-02-16 12:13) [2]

dbiRegenIndexes(Table1.Handle)???


 
Anatoly Podgoretsky ©   (2004-02-16 12:20) [3]

Лучше так   Check(DbiRegenIndexes(Tbl.Handle));


 
чайник1   (2004-02-16 12:23) [4]

Check(DbiRegenIndexes(Tablel.Handle)); ругает, что Check не декларированная переменная, я включил в uses  модуль DbiProcs, все равно ругает, в чем может быть дело?


 
Anatoly Podgoretsky ©   (2004-02-16 12:24) [5]

Check объявлена в Dbtables


 
Семен Сорокин ©   (2004-02-16 12:27) [6]

2чайник1
Это для парадокса, найди и исправь для Dbf.
function ReindexBase(aDB: TDatabase): boolean;
var
  _i   : integer;
  _list: tStrings;
begin
 Result := true;
 aDB.CloseDataSets;
 _list := tStringList.Create;
 try
  Session.GetTableNames(aDB.DatabaseName, "*.db", false, false, _list);
  for _i := 0 to _list.Count - 1 do
   with TTable.Create(nil) do
    try
     DatabaseName := aDB.DatabaseName;
     TableType    := ttParadox;
     Exclusive    := true;
     TableName    := _list[_i];
     try
      Active       := true;
      Check(dbiRegenIndexes(Handle));
     except
      on E: Exception do begin
       MessageDlg("Ошибка переиндексации:" + E.Message, mtError, [mbOk], 0);
       Result := false
      end
     end
    finally
     Close;
     Free
    end
 finally
  _list.Free
 end
end;


 
чайник1   (2004-02-16 12:32) [7]

спасибо, теперь при запуске ругает что не может открыть таблицу.
делаю так:
Table1.Exclusive := True;
Table1.Open;
Check(dbiRegenIndexes(Table1.Handle));


 
Anatoly Podgoretsky ©   (2004-02-16 12:36) [8]

В коде ошибки нет


 
Danilka ©   (2004-02-16 12:39) [9]

[7] чайник1   (16.02.04 12:32)
значит таблица уже где-то открыта, например, в дельфях.


 
чайник1   (2004-02-16 12:52) [10]

да я уже закрываю все перед индексацией, также как при копировании, она все равно ругает.


 
Danilka ©   (2004-02-16 13:03) [11]

как конкретно ругается? говорит, не может открыть в эксклюзивном режиме? тогда значит не все закрываешь. может-быть эта таблица открыта другой программой. чудес на свете не бывает. а если и бывают, то справку как с ними бороться ты здесь не получишь. :))


 
Danilka ©   (2004-02-16 13:07) [12]

Наиболее частая ошибка начинающих в этом случае, это когда в дельфи у тебя есть форма, на этой форме лежит ТТабле на эту таблицу и у нее установлен active := true. То-есть, она открыта дельфями.


 
чайник1   (2004-02-16 13:35) [13]

да, так и есть, но я  ведь закрываю, делаю Table1.close, а затем все остальное, и она выдает, что не может провести операцию открытия таблицы.


 
Danilka ©   (2004-02-16 13:40) [14]

[13] чайник1   (16.02.04 13:35)
Ты это делаешь в своей программе. Table1.close не закрывает таблицы открытые другими программами. А у тебя она открыта именно другой программой - дельфями.


 
Danilka ©   (2004-02-16 13:41) [15]

почитай про Exclusive в хелпе, что это за зверь, тогда сразу все поймешь.


 
Anatoly Podgoretsky ©   (2004-02-16 13:42) [16]

Когда ты открываешь и закрываешь в программе, то ты работаешь не с той таблицей, а с другой. Просто представь себе сеть, когда ты закрываешь таблицу у себя, ведь ты не закрываешь ее в другой программе или у другого клиента. Или закрой Дельфи и попробуй выполнить программу, или закрой все таблицы во всех формах, они также независимы друг от друга.

И при ссылке на ошибку надо сообщать точное сообщение, а не то что у меня не открывается таблица.


 
чайник1   (2004-02-16 14:00) [17]

спасибо..


 
чайник1   (2004-02-16 14:17) [18]

я вывел эту операцию отдельно, теперь уже не ругается на открытие, а говорит Invalid language Driver...а потом что невозможно создать индекс..


 
Anatoly Podgoretsky ©   (2004-02-16 14:36) [19]

Тоже наверняка правда, раз ругается.


 
ser_referi   (2004-03-09 10:31) [20]

2Anatoly Podgoretsky ©

  а тут возникла другого рода ошибка ругается что
dbiRegenIndexes не декларированная переменная


 
Anatoly Podgoretsky ©   (2004-03-09 10:37) [21]

Правильно ругается, поскольку это не переменная, а функция


 
ser_referi   (2004-03-09 10:41) [22]

не так просто написал пишет что Undeclared indentifier: "dbiRegenIndexes"


 
Плохиш   (2004-03-09 10:51) [23]


> ser_referi   (09.03.04 10:41) [22]
> не так просто написал пишет что Undeclared indentifier:
> "dbiRegenIndexes"

Я одного не пойму, у тебя что кнопка F1 сломана? Тогда используй меню Help


 
ser_referi   (2004-03-09 11:08) [24]

Да вроде не сломана и хелпом умею пользоваться но ничего не могу понять


 
ser_referi   (2004-03-09 11:10) [25]

может нужен какой нибудь дополнительный компонент???


 
ser_referi   (2004-03-09 11:32) [26]

нашел !!!!!!!!


 
Anatoly Podgoretsky ©   (2004-03-09 11:39) [27]

В справке указан нужный модуль, научись все таки пользоваться справкой, для начинающих вот полезная ссылка http://blackman.wp-club.net/forums/index.php?act=ST&f=3&t=282&s=852a2fcd19b3698e58ac92e770f2a564



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.031 c
3-1078816971
Лысый
2004-03-09 10:22
2004.04.04
Готовое приложение


1-1079341340
TUser
2004-03-15 12:02
2004.04.04
Оптимизатор


14-1078327285
pathfinder
2004-03-03 18:21
2004.04.04
Как удалить файл без возможности его восстановления?


11-1056511674
SPeller
2003-06-25 07:27
2004.04.04
TKOLHttp


14-1078898920
Карелин Артем
2004-03-10 09:08
2004.04.04
Писать ли в резюме результаты инет-тестов?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский