Главная
Новый форум
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Какой драйвер поддерживает файлы dbf из БЭСТ?
Goto page 1, 2  Next
 
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Технический форум БЭСТ-4
View previous topic :: View next topic  
Author Message
Ирина



Joined: 21 Mar 2003
Posts: 5



PostPosted: 21 Mar 2003 13:55    Post subject: Какой драйвер поддерживает файлы dbf из БЭСТ? Reply with quote

Скажите пожалуйста!
Хочу таблицу dbf перевести на SQL, а он орет на индексы в dbf , может есть какой-нибудь драйвер, опознающий данный формат dbf из БЭСТ????
помогите......
Back to top
View user's profile Send private message
itman



Joined: 05 Apr 2002
Posts: 1247
Location: Ильин Е.Ю.
Occupation: Cio
Interests: Кинель

PostPosted: 21 Mar 2003 14:59    Post subject: Reply with quote

Подробнее можно?
Цель эксперимента?
В поиске рекомендую порыться, бурно обсуждалось как-то, но все работают как работали.
Какова цель? Скорей всего средства уже имеются.
Back to top
View user's profile Send private message Send e-mail
Ирина



Joined: 21 Mar 2003
Posts: 5



PostPosted: 21 Mar 2003 15:08    Post subject: Reply with quote

Конечно можно поподробнее. А то уже и не знаю за что браться...
Дело вот в чем.
Есть файл myfile.dbf. Он является результатом работы программы БЭСТ.
Если написать сразу файл myfile.dbf

Select * from OPENROWSET('MSDASQL','MydbfSource';'';'', 'select * from myfile.dbf')
то пишет ошибку OLE DB provider 'MSDASQL' reported an error.
[OLE/DB provider returned message: [Microsoft][ODBC dBase Driver] Index not found.]

Если этот файл открыть в Excel и сохранить как dbf (DBASE4) myfile_1 и потом использовать в запросе

Select * from OPENROWSET('MSDASQL','MydbfSource';'';'', 'select * from myfile_1.dbf')
Где MydbfSource - устанавливался для Driiver do Microsoft DBase4 то все работает.

Пыталась сделать источник для драйвера Microsoft DBase Driver. Тоже не работает. Как сделать, чтобы пристегивать сразу начальный файл dbf, а не тот, который после Excel сохранялся опять же в формате dbf?
Насколько я поняла файлы dbf из БЭСТ другие чем "классические"...
Back to top
View user's profile Send private message
Magistr



Joined: 19 Aug 2002
Posts: 1264
Location: Петрунин Д.Н.
Occupation: Инженер-программист
Interests: Н.Новгород

PostPosted: 21 Mar 2003 18:44    Post subject: Reply with quote

На чем программа пишется?
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Шурик



Joined: 21 Feb 2003
Posts: 6
Location: Кварацхелия Александр


PostPosted: 21 Mar 2003 22:45    Post subject: Reply with quote

Скорее всего, нет разницы на чем пишется программа.

Я, например, также сталкивался с такой ситуацией, когда писал прогу на Visual C++ с использованием подключения к базам через ODBC Администратор. Причем, с такой ошибкой я сталкивался примерно на 2-3 процентах машин (под машиной понимается конкретный Windows и конкретный набор драйверов ODBC).

То, что IS использует под таблицы "не совсем" dbaseIV вполне очевидно. По крайней мере, ситуация отказа в подключении возникает не только при использовании ODBC интерфейса. Кто попробует из под Access 97 (ISAM) подцепить plan_sch.dbf как "dbase IV" получит строчку "Unexpected file format" (что-то примерно такое). Подключение же этой таблицы как Microsoft Foxpro прокатывает на ура.

Так, что могу посоветовать Ирине использовать не Microsoft dBase Driver, а драйвер Visual Foxpro (с выбором Free Table Directory). У этого драйвера есть свои недостатки, но он не обламывает подключение (или мне просто повезло ).

Если Ирина пишет с использованием MFC, то могу посоветовать следуюшее:

Если вы используете для подключения к базам данных объект класса, производного от CRecordset, то не нужно использовать все автоматически предлагаемые поля базы данных, а только необходимые (при этом исчезают проблемы с memo полями, которые никак нормально не подключаются).

Дерзай
_________________
А что нам снится? - так это свет в оконце,
Чего хотим мы? - чтоб кончилась война,
Куда идем мы? - туда, где светит солнце,
Вот только, братцы, добраться б до темна...
Back to top
View user's profile Send private message
Magistr



Joined: 19 Aug 2002
Posts: 1264
Location: Петрунин Д.Н.
Occupation: Инженер-программист
Interests: Н.Новгород

PostPosted: 22 Mar 2003 14:06    Post subject: Reply with quote

Я вот в Delphi работаю. Для работы с dbf использую бесплатную компоненту - ей не нужно никакие дополнительные драйвера, BDE, ODBC и проч.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Шурик



Joined: 21 Feb 2003
Posts: 6
Location: Кварацхелия Александр


PostPosted: 23 Mar 2003 21:27    Post subject: Reply with quote

Magistr wrote:
Я вот в Delphi работаю.


В Delphi не работают, на Delphi пишут...

Magistr wrote:
Для работы с dbf использую бесплатную компоненту - ей не нужно никакие дополнительные драйвера, BDE, ODBC и проч.


Любые бесплатные дополнительные компоненты - это такая вещь: вот она есть, а вот ее нет... При написании программ нужно ориентироваться на стандартные драйвера и компоненты, особенно, если эти программы подлежат тиражированию.
_________________
А что нам снится? - так это свет в оконце,
Чего хотим мы? - чтоб кончилась война,
Куда идем мы? - туда, где светит солнце,
Вот только, братцы, добраться б до темна...
Back to top
View user's profile Send private message
Шурик



Joined: 21 Feb 2003
Posts: 6
Location: Кварацхелия Александр


PostPosted: 23 Mar 2003 21:28    Post subject: Reply with quote

Magistr wrote:
Я вот в Delphi работаю.


В Delphi не работают, на Delphi пишут...

Magistr wrote:
Для работы с dbf использую бесплатную компоненту - ей не нужно никакие дополнительные драйвера, BDE, ODBC и проч.


Любые бесплатные дополнительные компоненты - это такая вещь: вот она есть, а вот ее нет... При написании программ нужно ориентироваться на стандартные драйвера и компоненты, особенно, если эти программы подлежат тиражированию.
_________________
А что нам снится? - так это свет в оконце,
Чего хотим мы? - чтоб кончилась война,
Куда идем мы? - туда, где светит солнце,
Вот только, братцы, добраться б до темна...
Back to top
View user's profile Send private message
Ирина



Joined: 21 Mar 2003
Posts: 5



PostPosted: 24 Mar 2003 08:38    Post subject: Reply with quote

Спасибо за ответы. Обязательно попробую использовать фрайвер от FP . Я раньше тоже об этом что-то слышала. но драйверы такого не оаказалось. Попробую сейчас VFP установить. Может тогда что получиться....
Спасибо еще раз. А пишу я тоже на Delhpi.
Back to top
View user's profile Send private message
Ирина



Joined: 21 Mar 2003
Posts: 5



PostPosted: 24 Mar 2003 09:46    Post subject: Reply with quote


к сожалению, не получается....
По совету, установила VFP6.0 Беру драйвер Microsoft Visual FoxPro Driver Опция Free Table Directory Выбираю путь, где лежат dbf таблицы OK.
На SQL пишу

Select * from OPENROWSET('MSDASQL','FPSource';'';'', 'select * from Best_file.dbf')
Орет ошибку
An error occurred while preparing a query for execution against OLE DB provider 'MSDASQL'.
[OLE/DB provider returned message: [Microsoft][ODBC Visual FoxPro Driver]Unrecognized command verb.]

Я что-то не так делаю?
Back to top
View user's profile Send private message
AndReW_Samara



Joined: 13 Feb 2002
Posts: 86
Location: Колуж Андрей Валериевич
Occupation: Гелиос-7 (начальник отдела автоматизации)
Interests: Самара

PostPosted: 24 Mar 2003 12:52    Post subject: Reply with quote

Драйвер OLE DB лучше взять от VFP 7.0. При этом не обязательно устанавливать весь VFP, достаточно взять одну DLL-ку (VFPOLEDB.DLL) и зарегистрировать ее с помощью regsvr32.

Однако и с ней (ним?) и Delphi 5 у меня были непонятные проблемы, которые ушли с установкой Delphi 7.
Back to top
View user's profile Send private message
Magistr



Joined: 19 Aug 2002
Posts: 1264
Location: Петрунин Д.Н.
Occupation: Инженер-программист
Interests: Н.Новгород

PostPosted: 24 Mar 2003 16:15    Post subject: Reply with quote

Шурик wrote:
Magistr wrote:
Я вот в Delphi работаю.


В Delphi не работают, на Delphi пишут...

Magistr wrote:
Для работы с dbf использую бесплатную компоненту - ей не нужно никакие дополнительные драйвера, BDE, ODBC и проч.


Любые бесплатные дополнительные компоненты - это такая вещь: вот она есть, а вот ее нет... При написании программ нужно ориентироваться на стандартные драйвера и компоненты, особенно, если эти программы подлежат тиражированию.


Самый умный?

На Delphi не пишут - пишут на Object Pascal! А еще пишут на сях и других языках, но не на Delphi. Delphi - это не язык программирования, а интегрированная среда быстрой разработки приложений. Так что работаю я в среде Delphi, а программы пишу на Object Pascal.

По поводу компонент. Что значит "вот она есть, а вот ее нет"? У меня есть интсрумент, с помощью которого можно удобно делать то , что нужно. Компонента есть и никуда не денется. Удобство в данном конкретном случае заключается в том, что не нужно никаких дополнительных драйверов устанавливать и настраивать, чтобы с dbf файлами работать. Помоему, это очень удобно, к тому же удешевляет разработку, поставку, настройку и упрощает поддержку.

P.S
Пишу на Pascal уже более 10 лет. В Delphi работую более 7 лет.
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Шурик



Joined: 21 Feb 2003
Posts: 6
Location: Кварацхелия Александр


PostPosted: 28 Mar 2003 01:32    Post subject: Reply with quote

Для ИРИНЫ: Читайте в самом конце.

Magistr wrote:

Самый умный?

Из всего вышесказанного этого не следует. Я к тому, что раз компонента доступа к базам данных бесплатная, то нужно указать ее местоположение, или что еще лучше, переслать ее девушке, к тому же она пишет на Delphi.

Лирическое отступление: по поводу средств разработки программного обеспечения. Есть чистые стандарты для компиляторов разного рода языков. Каждая фирма-разработчик компиляторов предлагает свое расширение их стандартной функциональности. В некоторых случаях это выливается в набор библиотек, в других сучаях - в набор своих "примочек". Главным критерием того, что можно сказать: я пишу на C++ или Object Pascal, является ПЕРЕНОСИМОСТЬ КОДА с одного компилятора на другой с минимальными затратами. Я не уверен, что мой код (Visual C++, MFC) будет нормально скомпилирован на Borland C++ (даже при условии, что Microsoft предоставит мне исходники своих классов), тем более обратно. Поэтому, на данном этапе развития средств разработки программного обеспечения, как я считаю, нужно выделять как Visual C++, так и Delphi в качестве отдельной сущности, а не как надстройку над соответствующим языком программирования.

Так что, 1-1 ...

В свете вышесказанного, понятно, почему я отношусь с недоверим к отдельным внешним компонентам. Конечно, это все упрощает разработку и внедрение программного обеспечения. А если через ...цать лет (это условно) на всех машинах окажется Windows 2005 или XXXP with Service Pack 8 с поддержкой платформы .Super.NET, кто МНЕ ГАРАНТИРУЕТ, ЧТО МОЯ КОМПОНЕНТА (соответствующая dll-ка) БУДЕТ ВООБЩЕ ГРУЗИТЬСЯ В АДРЕСНОЕ ПРОСТРАНСТВО ОПЕРАЦИОННОЙ СИСТЕМЫ... А ЕСЛИ НЕТ, ТО ЧТО, МНЕ ПЕРЕПИСЫВАТЬ ВЕСЬ СВОЙ КОД (порядка 30 тысяч строк). А при ориентации на стандартные драйвера и интерфейся вызовов низкоуровневых функций (!!!) есть хоть какая-то уверенность, что вся линейка продуктов Windows, начиная с Win 98, будет поддерживать мой код. Вот...

ДЛЯ ИРИНЫ: Попробуйте запустить свою программу на соседнем компьютере (для уверенности, лучше на 2ух). Если проблемы с индексами исчезнут, то смело сносите windows с первой машины. У меня один раз так прокатило. Иначе, требуйте с Magistr'a его бесплатную компоненту. Иначе, попробуйте подключиться к какой-нибудь простой базе, например, msclad.dbf (там, где нет memo полей и прочей ерунды). Если получиться, то попробуйте упростить Ваш первый запрос, например, не требуйте передать Вам весь набор полей (не SELECT * FROM..., а SELECT FLD1, FLD2... FROM...). В большинстве своем, все поля не требуются, а SELECT * запрашивает в том числе и memo-поля, про которые я в стандарте SQL ничего не слышал (то есть Ваш драйвер может элементарно орать на ненужную Вам информацию). Опять таки, это из личного опыта. Я подключался к mlabel.dbf и мне постоянно выдавали ошибку, типа, где-то там слишком длинная строка. Я долго пытался понять, в чем же дело, пока не стал отключать в запросе SELECT по одному полю. Сбойное поле оказалось memo. В Вашем случае, может происходит какая-либо другая ситуация. Это выясняется МЕТОДОМ ПРОБ И ОШИБОК. Если нужно что либо подсказать, то пишите сюда.

В общем, дерзай
_________________
А что нам снится? - так это свет в оконце,
Чего хотим мы? - чтоб кончилась война,
Куда идем мы? - туда, где светит солнце,
Вот только, братцы, добраться б до темна...
Back to top
View user's profile Send private message
Magistr



Joined: 19 Aug 2002
Posts: 1264
Location: Петрунин Д.Н.
Occupation: Инженер-программист
Interests: Н.Новгород

PostPosted: 28 Mar 2003 13:49    Post subject: Reply with quote

Шурик wrote:
Для ИРИНЫ: Читайте в самом конце.

Magistr wrote:

Самый умный?

Из всего вышесказанного этого не следует. Я к тому, что раз компонента доступа к базам данных бесплатная, то нужно указать ее местоположение, или что еще лучше, переслать ее девушке, к тому же она пишет на Delphi.



Мир
Компоненты можно взять на www.torry.net
Back to top
View user's profile Send private message Send e-mail Visit poster's website
AndReW_Samara



Joined: 13 Feb 2002
Posts: 86
Location: Колуж Андрей Валериевич
Occupation: Гелиос-7 (начальник отдела автоматизации)
Interests: Самара

PostPosted: 01 Apr 2003 10:08    Post subject: Reply with quote

Ирина, пришлите письмо на samara@bestvolga.ru
Поможем стандартным драйвером.
С ним без проблем можно работать из Delphi (запись чтение из SIX3 БД, котрыми БЭСТовские базы и являются)
_________________
С уважением, Колуж Андр
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Технический форум БЭСТ-4 All times are GMT + 4 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group

Rambler
Rambler's Top100 Рейтинг@Mail.ru