Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.23;
Скачать: CL | DM;

Вниз

Создание индексов в таблицах Dbase   Найти похожие ветки 

 
Алекса   (2003-12-26 07:51) [0]

Всем добрый день! Мне тут не повезло - подкинули базу dbase 3+. Для нее необходимо создать индекс. Пыталась как для dbase 4(код приведу ниже), но ничего не вышло.Может для создания индекса в такой базе нужна какая-то специфическая команда?

Часть кода для dbase 4
В данной процедуре исправляется заголовок
procedure TFrmDbf.RemoveMDXByte(dbFile: string);
const
Value: Byte = 0;
var
F: file of byte;
begin
//Исправление заголовка, чтобы не требовать файл .mdx
AssignFile(F, dbFile);
Reset(F);
Seek(F, 28);
Write(F, Value);
CloseFile(F);
end;

//В этом кусочке процедуру создается индекс
Tkredit.Exclusive :=true;
Tkredit.addIndex("ID_NLS","NLS",[]);
Tkredit.Open;
dbiPackTable (Tkredit.Database.Handle, Tkredit.Handle,PChar (Tkredit.TableName), szDBASE, True);
Tkredit.close;
Tkredit.Exclusive :=false;


 
sniknik ©   (2003-12-26 08:43) [1]

в третьем не может быть .mdx, а только файловые *.ntx, и имя файла индексного должно с именем поля совпадать (не всегда, но в некоторых случаях требуется). в обшем попробуй
Tkredit.addIndex("NLS","NLS",[]);

все остальное тоже самое.


 
Алекса   (2003-12-26 08:49) [2]

Sniknik - попробовала. Выдает ошибку - Table level changed. Хотя я в BDE администраторе в сонфигурации-драйвера для Dbase специально поставила level 3.


 
sniknik ©   (2003-12-26 10:52) [3]

> Table level changed
похоже на то что в индексе чтото, что несовместимо в 3, пытается/конвертит в 4.
кстати откуда увереность что сама табличка в 3м формате? может например клипер или фокс.

запросом не пробовал/а ?
CREATE INDEX NLS ON Table (NLS)

не получится переходи на Halcyon (или ананалог) я с ним работаю, с клиперными правда, а в последнее время и с фохрошными таблицами/индексами, но тоже старыми (индексы ntx, idx), нормально получается.



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

Текущий архив: 2004.01.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
14-72870
EvgeniusII
2003-12-30 18:20
2004.01.23
Можно ли на Delphi


14-72927
Knight
2004-01-01 02:06
2004.01.23
Вот говорят, как год встретишь, так его и проведёшь...


4-72969
Jopik
2003-11-18 20:12
2004.01.23
Enter в кнопке


14-72948
Thor
2003-12-31 21:46
2004.01.23
С Новым Годом!


3-72647
oss
2003-12-26 12:11
2004.01.23
импорт данных