![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
индексация Баз Данных [D5, dBase, FoxPro]
sir_musatov © (2002-03-22 11:14:00)Уважаемые Мастера! при обращении к некоторым таблицам (DBF) возникает ошибка invalid index descriptor, как правильно провести индексацию (переиндексировать)
подскажите пожалуйста !!!
Владимир С (2002-03-31 15:40:00) [1]Здравствуйте уважаемые знатоки.
Помомогите разобраться в следующей проблеме.
Имеется таблица с данными формата Paradox c именем
Table с двумя полями NN - числовое и Name - текстовое,
Имеется индекс NN;Name.
В таблицу добавляется частями информация при помощи SQL запроса
Insert into .....Select NN, Name From ....
и частями удаляется командой DELETE FROM Table ...
Немогу понять почему индексы в таблице вообще не обновляются.
Помогите пожалуйста.
sir_musatov (2002-03-22 15:47:00) [2]теперь все ОК, СПАСИБО Lord Warlock ©
Lord Warlock (2002-03-22 15:04:00) [3]Query1.Close;
Query1.DatabaseName:=DirectoryListBox1.Directory;
Query1.SQL.Clear;
Query1.SQL.Add("select * from "+ #39 + //Насчет этого не знаю, проверять некогда
(filelistbox2.Items.Strings[filelistbox2.ItemIndex])+#39 );
Query1.Open; // <--- и вот так
А если индексы в таблице не работают, сноси индексный файл,
в Database Desktop открывай базу и индексируй заново
Программно можно это сделать если посмотришь хелпу на
функцию PackTable (там есть и пример)
sir_musatov (2002-03-22 13:20:00) [4]в ответ Invalid Index Descriptor
пробовал для открытия базы SQL
Query1.Active:=false;
Query1.DatabaseName:=DirectoryListBox1.Directory;
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add("select * from "+ #39 +(filelistbox2.Items.Strings[filelistbox2.ItemIndex])+#39 );
Query1.ExecSQL; // <--- если закоментировать эти
Query1.Active:=true; // <--- строки, то запрос без
// ошибки, но не видно базу
может можно переиндексировать базу с помощю SQL
-=CrazyFish=- (2002-03-22 12:42:00) [5]может нужно у TTable перед открытием указать TableType:=ttFoxPro?
sir_musatov (2002-03-22 12:21:00) [6]Я не указываю IndexName, и кстати Database Desktop тоже не может открыть таблицу; досовая(на ФоксПро) прога (чьи это таблицы) прекрасно работает со всеми таблицами.
-=CrazyFish=- (2002-03-22 11:18:00) [7]Просто не нужно указывать IndexName, которого не существует, тогда и ошибки не будет. Нужные индексы можно задать в Database Desktop.