Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / про DBF / 14 сообщений из 14, страница 1 из 1
11.12.2008, 14:06
    #35708186
Миро
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Всем привет
подскажите, пожалуйста, чем сейчас стоит юзать DBF файлы, ведь BDE умер?
может есть специализированная бибилотека?
спасибо
...
Рейтинг: 0 / 0
11.12.2008, 14:07
    #35708192
RENaissance
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Миро
Всем привет
подскажите, пожалуйста, чем сейчас стоит юзать DBF файлы, ведь BDE умер?
может есть специализированная бибилотека?
спасибо

ODBC
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
11.12.2008, 14:09
    #35708200
Миро
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
RENaissance
ODBC

через ADO?
...
Рейтинг: 0 / 0
11.12.2008, 14:54
    #35708354
RENaissance
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Миро
через ADO?

Можно и через ADO.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
11.12.2008, 15:45
    #35708536
GreenStar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Advantage Database Server

Sybase iAnywhere
devzone.advantagedatabase.com
...
Рейтинг: 0 / 0
17.12.2008, 13:19
    #35719812
regom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Обработка DBF-файлов в моем понимании возможна 3 способами:
1. Специальными СУБД под MS-DOS (Clipper и т.д.)
Это для тех, кто может существовать без Windows, кнопок, окон и тому подобного. (Имеется в виду, что работа происходит в сеансе MS-DOS в специальном окне, а также к услугам полноэкранный режим). Если пользоваться CLIPPERом, то только версией 5.3 с оговорками (4-я слишком старая, 5.0, 5.1 и 5.2 содержит глюки при работе с DBF-файлами на ровном месте).
А при работе с версией 5.3 необходимо отказываться от системы индексирования CLIPPERа (.NTX), в которой содержатся глюки при работе с большими DBF-файлами (что-то начиная с 40 000 записей) и включать систему индексирования DBASE (.NDX), не содержащей ошибок. Это делается следующей последовательностью действий:
а) request DBFNDX // в начале главного модуля
б) rddsetdefault('DBFNDX') - до открытия DBF-файлов один раз в главном модуле.
в) при линковке указывать lib dbfndx , которая поставляется с CLIPPEROM.
Также там имеется два линкера - Exospace (типа основной) и Blinker 1.0 (дополнительный от сторонней фирмы). Так вот - для небольших и средних программ можно пользоваться Exospace, а для программ неограниченного размера - (типа расчета заработной платы) - только Blinkier 1.0. В Интернете мне удалось найти версии Blinker 5.0 и 6.0 , однако я так понял, что это какая-то СНГовая переделка, и она не может собирать большие программы (не хватает какой-то памяти).
При работе в CLIPPERе файлы обрабатываются прекрасно, но основное время программиста уходит на создание всяких редакторов этих самых DBF-файлов в виду ущербности штатного DBEdit-a. Так что этот вариант можно рекомендовать для полностью автоматизированной обработки, где
не требуется ручной обработки DBF-файлов.
Еще важное достоинство CLIPPERa- его поразительная устойчивость против внезапных сбоев компьютера. Если пользоваться оператором COMMIT - то будьте уверены, что в файл будет записано ровно то, что программа успела обработать. Я ставил эксперимент в поисках отказоустойчивой СУБД - выводил в цикле быстро меняющееся число на экран и параллельно с этим добавлял по одной записи в DBF-файл с каждый раз увеличивающимся на 1 значением. И в некоторый момент нажимал RESET, моделируя этим внезапную остановку системы. После перезагрузки компьютера я изучал содержимое DBF-файла - какая запись записана последней?
Именно при экспериментах с CLIPPERом последней записью было именно то, что успело мелькнуть на экране в момент нажатия RESEТа (проверке подвергались также PARADOX, CLARION, ACCESS, FOXPRO - файл был просто пустым).

2. Специальными программами под Windows, не использующие BDE и ODBC (CLARION, например).
Очень неплохая система, но очень своеобразный язык программирования и очень своеобразный подход, так что я изучал его с 1999 года и только в 2004 году создал первое приложения для обработки DBF-файлов. Так что можно рекомендовать лишь тем, кому с легкостью поддаются новые языки программирования. Главный недостаток - чувствительность к тому, в каком порядке идут поля в DBF-файле (программу придется перекомпилировать, если решите поменять поля местами). Так что можно рекомендовать в случае, если файлы будут со строго определенной структурой. Однако можно поступать наоборот - менять структуру DBF-файла под программу, если
ведущим в разработке является программа, а не структура DBF-файла. Этот недостаток все-таки компенсируется слишком скоростной обработкой и наличием средств быстрого создания редакторов для ручной обработки файлов. Как это делать - в версии CLARION 2.0 имеется учебничек типа "Первые шаги" в формате PDF, только прочитав который научился таки создавать приложения на CLARIONе. Без него хоть выучите язык наизусть - ничего не получится, слишком все своебразно сделано.

3. Большинством программ, использующие ODBC (хоть даже MS Office, Cristal Report). Этот подход подразумевает использование SQL-запросов, а я в этот клуб стараюсь не ходить по принципиальным соображениям (я стараюсь пользоваться индексно-последовательным способом доступа к DBF-файлам). Однако очень хорошая программа Cristal Report (пожалуй единственный нормальный генератор отчетов под Windows) заставляет меня использовать таки ODBC для создания отчетов на основе DBF-файлов. Но создание отчетов - это не обработка, хотя и очень важная часть. В Access-е можно сделать так называемую присоединенную таблицу - создать сначала пустую, а затем к ней присоединить "отдельно стоящий" DBF-файл. Дальше - создавать модуль и на Visual Basic c применением DAO (Data Access Object) (который надо еще подсоединить не забыть) обрабатывать DBF-файл через систему Аccess. После пары неустранимых глюков в Аccess-е 7, 8, 9, 10 (система зависала при попытке подчиненной формы просуммировать строки и вернуть это в родительскую форму - куда уже проще? - я отказался от работы в Ассess-е и использую его только для ручной обработки DBF.
...
Рейтинг: 0 / 0
04.02.2009, 08:44
    #35795374
Emery
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
...
Рейтинг: 0 / 0
13.03.2009, 17:39
    #35868336
про DBF
regom,
думаю не умышлено забыл, но есть еще один вариант - написать самому или адаптировать одну из имеющихся библиотек для прямого доступа, как к бинарному файлу.
...
Рейтинг: 0 / 0
19.03.2009, 13:30
    #35879109
Vowk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Дмитрий Бруханчик,
действительно, и это приходится иногда делать:
1. Для предварительного выяснения стуктуры в тех СУБД, когда порядок следования полей имеет значение (чтобы не нарваться на ошибку при открытии);
2. В Linuxe пытаюсь поднять обработку DBF на FreePascal, уже дошел до экранного редактирования. Осталось с индексированием разобраться.
...
Рейтинг: 0 / 0
20.03.2009, 13:32
    #35881720
Petr_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Если здесь вспоминали о Clipper, то следует вспомнить и о его "наследниках", современных xBase компиляторах, таких как Harbour , xHarbour, xBase++. Первые два - кросплатформенные, к примеру
Harbour is a compiler for the xBase superset language often referred to as Clipper (the language that is implemented by the compiler CA-Clipper). Harbour is a cross-platform compiler and is known to compile and run on MS-DOS, Windows (32 & 64), Windows CE, Pocket PC, OS/2, GNU/Linux and Mac OSX.

И для regom-a - самая стабильная и безглючная версия Clipper 5.2e. Если использовать 5.3, то рекомендую 5.3b. От NTX отказываться не стоит, если только не в пользу CDX. Линкеры Blinker версии 5.0, 6.0, 7.0 существуют, они лучше 1-й версии, просто надо усвоить процедуру сборки.
...
Рейтинг: 0 / 0
24.03.2009, 12:28
    #35887812
regom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Petr_Ch,
спасибо за совет, попробую с CLIPPER 5.2 еще раз повозиться, если надыбаю версию именно 5.2е, и вариант использования CLIPPER 5.3 попробую.
В моем варианте CLIPPER 5.2 глюк был такой - неправильно срабатывал DBGOTO(#записи).
...
Рейтинг: 0 / 0
24.03.2009, 13:44
    #35888134
Petr_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
regom,
см.здесь http://%5Dhttp://spravki.net.ru/clipper/ca-clipper.htm%5B/url]
А возникшие вопросы по Clipper-y рекомандую задавать на форуме сайта http://clipper.borda.ru/ . Может и ответят ;)
...
Рейтинг: 0 / 0
24.03.2009, 13:51
    #35888161
Petr_Ch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Что-то я с ссылками намудрил ;)
сайт http://spravki.net.ru/clipper/ca-clipper.htm
форум http://clipper.borda.ru/
...
Рейтинг: 0 / 0
24.03.2009, 16:23
    #35888771
regom
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
про DBF
Побывал на сайте, но ссылка на патч для clipper 5.2e как раз и не работает. Нашел на другом сайте http://www.incredibleprogram.com/html/clipper_patches.html. Там два варианта (US Version и International Version). Буду пробовать обе - может подойдет.
...
Рейтинг: 0 / 0
Форумы / Другие СУБД [игнор отключен] [закрыт для гостей] / про DBF / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]