Форум: "Базы";
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];
ВнизКак игнорировать ошибку при открытии БД Найти похожие ветки
← →
Do№ (2002-01-16 22:02) [0]При открытии базы данных созданной в клипере возниакет ошибка "индексный файл ненайден или повреждён" При составлении программы при изменении значения Компонента "табле" делфи выводит сообщение что индекс ненайден и предлагает выбор:открыть для чтения, неоткрывать, открыть и detach а при падлючении к базе данных уже откомпилированной программы база просто неоткрывается. Как осуществить етот самый "открыть и detach" в программе.
← →
Фэ (2002-01-16 22:24) [1]Не знает ничего BDE o Clipper-е и его индексах.
Лечиться созданием поддерживаемых индексов (DBase,FoxPro).
← →
Oleg_EM (2002-01-17 09:31) [2]или использовать Apollo, Halcyon
они много знают о Clipper ;-)
← →
Desdechado (2002-01-17 10:20) [3]индекс-то какой?
← →
Anatoly Podgoretsky (2002-01-17 10:53) [4]И также, что за база
Но если нужно то же самое поведение, то надо использовать DbiRegisterCallBack
← →
Do№ (2002-01-17 21:04) [5]Програмист писавший прогу давно неработает.
имя индекса непоказывает ниодна программа.
При создании базы данных вроде использовался какойто драйвер неизвестного производителя для клипера который добавлял некоторые возможности.
Када делаеш Query.activ:=true в режиме конструктора делфи сообщает что индекснный файл отсутствует или повреждён и даёт возможность :
- открыть для чтения
- не открывать
- open anr detach
как написать чтобы при работе скомпилированной программы она сама делала : "open and detach"? ато просто сообщение выдаёт "немогу открыть индекс отсутствует или повреждён"
← →
Фэ (2002-01-17 22:55) [6]Бог мой, да убей ты 28(dec) байт до 0 в dbf-файлах чем хочешь или сможешь и создавай родные для BDE индексы или без них..
← →
Oleg_EM (2002-01-18 11:35) [7]2Do№ ты скажи какое расширение у индекных файлов NTX ?
← →
Hawk2 (2002-01-18 12:13) [8]Я тоже работаю с БД которую обрабатывает програмка на Clipper-е но сами файлы БД имеют тип dBASE III+ (разве есть тип БД Clipper?).
TO Oleg_EM:
расширение действительно NTX.
TO Do№:
Проблема с индексами это только цветочки, потом еще будет проблема с кодировкой, так как данные в твоей базе, скорее всего, имеют ДОС-кодировку, а работать ты хочешь в Винде. Дело в том что я сам с этим всем мучался (и с индексами и с кодировкой), так что если таблиц не много то лучше перегони данные из них в другую базу под Винду (например Paradox), потом перекодируй и создавай сколько хош индексов.
← →
Oleg_EM (2002-01-18 13:40) [9]2Hawk2 Написано много программ работающих с dbf/ntx
в том числе и базы с > 50 000 записей, индексы и по ФИО и всяка
не было проблем ни с кодировкой ни с сортировкой, базы используются одновременно и Клиппер-приложениями и Дельфи3
(ну нада така пока ;-))
использую Apollo
← →
Do№ (2002-01-18 19:49) [10]Индексы *.cdx
при создании индексных файлов использовался драйвер производства неизвестной фирмы
базы фокспрошные
← →
Anatoly Podgoretsky (2002-01-19 10:45) [11]Do№ (18.01.02 19:49)
Почему так решил, я бы так не рискнул, из за "драйвер производства неизвестной фирмы" и вероятно это имеено так, судя по описанной тобой ситуации. Вполне возможно, что это формат Клиппер.
Ты по пробовал использовать DbiRegisterCallBack, он специально предназначен для обработки подобных ситуаций, не в пример хакерским методам по убийству "28(dec) байт"
← →
Do№ (2002-01-19 19:30) [12]в понедельнтк буду пробовать а пока мне тут подсказали написать на фоксе программу открывающююю все база поочереди (при ошибке индекса ссылка на него вроде удаляется) о результатах в понедельник...
← →
Anatoly Podgoretsky (2002-01-19 21:23) [13]Ну если есть фокс и он окрывает эту таблицу, то он спрашивает при открытии без всякой программы, так же кстати поступает и DBD
но ты эе вроде как бы хотел программным путем из Дельфи-программы.
← →
gorohov (2002-01-20 11:13) [14]На http://blackman.km.ru
лежит NStruct 2.5 - открывает перекодирует OEM-WIN
DBF - файлы. Она же грохнет отметку о индексе.
Там и исходники. Описание DBF формата. Если что, пишите в гостевую. Я дальше пошел...
← →
BJValentine (2002-01-20 12:06) [15]Do № , не усложняй себе жизнь, работай с DBF файлами как с DBase овскими. Если ты пишешь прогу, которая должна работать дополнительно к Clipper ной проге, то используй компоненту типа Appollo, для того, чтобы она использовала и модифицировала имеющиеся индексы, а если это отдельная програ, без Clipper проги, то ещё проще - создай индекс в Database Desktop и работай с ними. И никуда базу не надо перегонять, чтобы избавиться от ДОС кодировки, достаточно в BDE для DBase баз установить LangDriver= DBase rus cp866. Дерзай.
← →
Do№ (2002-01-20 22:17) [16]-Проблемы с досовской кодировкой нет:Все корректно отображается и в репорт выходит без проблем (БДЕ давно настроен).
-Индекс мне ненужен: база слипера используется тока для чтения.
-Дельфовская программа должна работат с данными клиперской и как заметил Anatoly Podgoretsky желательно чтобы и индекс(ссылку на него в DBF)удалялась из делфи.
-== В первом сообщении я попвтался подробно обозначить проблемы но входе дискуссии переключились на проблему с кодировкой.
-== Я использую TDatabase,ТQuery,и остальное...
при изменении параметра Activ компонента Query в objectInspector на true при отсутствии индекса появляется сообщение:"индекс ненайден или поврежден" и выбор :-открыть для чтения, не открывать, open and detach. НО ПРИ РАБОТЕ ОТКОМПИЛИРОВАННОЙ ПРОГРАММЫ ПОЯВЛЯЕТСЯ СООБЩЕНИЕ ЧТО ИНДЕКС НЕНАЙДЕН БАЗА НЕ ОТКРЫТА
++++ КАК ЗАСТАВИТЬ ОТКОМПИЛИРОВАННУЮ ПРОГРАММУ ЗАДАТЬ ВОПРОС: ЧТО ЖЕ ДАЛАТЬ С БАЗОЙ У КОТОРОЙ ОТСУТСТВУЕТ ИНДЕКСНЫЙ ФАЙЛ, ИЛИ СДЕЛАТЬ ОБРАБОТЧИК ЭТОГО СОБЫТИЯ ++++
А что за компонент "Аполо" ?
← →
Иванов Сергей (2002-01-20 23:08) [17]Полностью поддерживаю
Бог мой, да убей ты 28(dec) байт до 0 в dbf-файлах чем хочешь или сможешь и создавай родные для BDE индексы или без них..
Это признак приутствия индексного файла, его и клиппер не всегда верно ставит. Если создавать индексы отдельно то и не ставит.
Вот Вы мне лучше раскажите,что за символ & по смещению 29(dec)?
← →
Anatoly Podgoretsky (2002-01-20 23:35) [18]Ну сколько же тебе писать используй DbiRegisterCallBack
Воспользуйся и получишь этот диалог, а при желании обработаешь ошибку в тихую.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.004 c