Запустить мою прогу про dbf на любой другой машине - никак..

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Запустить мою прогу про dbf на любой другой машине - никак..

Сообщение Kundor » 17.08.2006 (Чт) 12:08

Есть такая проблема. Написал наконец прогу на VB6. Всё у меня работает. Собрал дистрибутив (туда ессно вошел mdac, в проекте описан как ms ado 2.0, впрочем пробовал подставить разные ado). ставлю на виртуальной машине (VMWare с XP) у себя же, что б проверить. После установки - проверяю - не работает. Дошел до того, что поставил туда VB6, перетащил проект, по шагам проверяю - действительно. Процесс идёт так:
1) подключаю базу
Global Conn As ADODB.Connection
Global RST As New ADODB.Recordset

Set Conn = New ADODB.Connection
Conn.Provider = "Microsoft.Jet.OLEDB.4.0"
ConnectionString = "Data Source=" + Path & "base\" & " ;Extended Properties=DBASE IV"
Conn.Open (ConnectionString)
With RST
Set .ActiveConnection = Conn
.Properties("IRowsetIdentity") = True
.CursorLocation = adUseServer
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
End With

2) запрос данных
ComText = "Select * from LS where ls_num=" & LIC
RST.Open ComText
в этом месте басик говорит:
"внешняя таблица не имеет предполагаемый формат".
Что за фигня? Как победить? На моей машине всё работает...

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 17.08.2006 (Чт) 12:11

Странный у тебя ConnectionString. Смотри тут: www.connectionstrings.com
Lasciate ogni speranza, voi ch'entrate.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: Запустить мою прогу про dbf на любой другой машине - ник

Сообщение VVitafresh » 17.08.2006 (Чт) 12:16

Kundor писал(а):2) запрос данных
ComText = "Select * from LS where ls_num=" & LIC
RST.Open ComText
в этом месте басик говорит:
"внешняя таблица не имеет предполагаемый формат".
Что за фигня? Как победить? На моей машине всё работает...

Попробуй в этом месте написать:
Код: Выделить всё
ComText = "SELECT * FROM LS WHERE LS_NUM=" & LIC
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 12:19

строку здесь же на форуме где-то и подобрал,
сейчас попробовал - вписал так:
ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Path1 & ";Extended Properties=dBASE IV;User ID=Admin;Password="

ничего не изменилось. ошибка та же.. :(

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 12:25

VVitafresh - я правильно понял - просто в запросе всё написать большими буквами??? не понял, но попробовал - результат тот же...

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 17.08.2006 (Чт) 12:29

Да, ты правильно меня понял. Есть при работе с DBF такая фича, что запросы набранные НЕ заглавными буквами не всегда работают корректно.
Попробуй еще такую строку подключения:
Код: Выделить всё
cn.Open "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & DbfFolder & ";"
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 12:47

на это подкулючение он ругается - "не возможно найти устанавливаемый ISAM". странно всё это. Посмотрел в ODBC - этот драйвер прописан.

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 13:17

не, ну это пипец какой-то. многочисленными экспериментами дошел до такого:
один каталог, на который ссылается Connection. Один Recordset.
две (!) разные базы - cv.dbf и ls.dbf.
пишу
ComTextBankDB = "Select * from cv"
BankDBRST.Open ComTextBankDB
работает
пишу
ComTextBankDB = "Select * from ls"
BankDBRST.Open ComTextBankDB
не работает: "внешняя таблица не имеет предполагаемый формат".
мож я как-то туплю по чёрному - кто-нибудь с таким сталкивался??? :evil:

Алексей К.
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 419
Зарегистрирован: 12.05.2004 (Ср) 9:41
Откуда: Ульяновск

Сообщение Алексей К. » 17.08.2006 (Чт) 14:01

ставлю на виртуальной машине (VMWare с XP) у себя же, что б проверить

А ты попробуй на не виртуальной, а на другом компе - мало ли причина траблы в VMWare

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 14:11

у меня ощещение, что на той машине, где писал прогу - стоит что-то что не переносится простым mdac. мож какие особые ISAM драйвера...
есть какой-нибудь способ определить - через какие библиотеки прогар обращается к базе?

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 17.08.2006 (Чт) 14:13

На Win98 надо еще JET 4.0 ставить.
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 14:16

не, это не 98, я ж писал в начале: VMWare с XP
причём пропатченная XP на сегодняшний день по полной - с Windows Update.
кстати - закачал отдельно этот Jet 4.0 - думал - мож отдельно надо поставить - фиг. он говорит что не надо - "уже установлен".

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Сообщение VVitafresh » 17.08.2006 (Чт) 14:26

Если пишет:
внешняя таблица не имеет предполагаемый формат

может быть это так и есть? Может DBF запорчен/имеет неправильный формат?
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 17.08.2006 (Чт) 14:34

а может это и не dbf вовсе :lol:
в этот формат могут многие базы писать и у каждого свой провайдер обычно для доступа к данным

Алексей К.
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 419
Зарегистрирован: 12.05.2004 (Ср) 9:41
Откуда: Ульяновск

Сообщение Алексей К. » 17.08.2006 (Чт) 14:49

Может DBF запорчен/имеет неправильный формат?

так автор говорит что:
Всё у меня работает


Попробуй их (cv.dbf и ls.dbf) линкануть в Access`е и посмотреть их - получиться или нет?

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 14:50

смешно, блин :)
я убъюсь щас веником...
не, это - dbf - и ведь самое худшее - что на моей машине он нормально читается! а сами dbf- - не мои, они как справочники предоставляются сторонней конторой...

Kundor
Новичок
Новичок
 
Сообщения: 37
Зарегистрирован: 22.11.2003 (Сб) 15:59
Откуда: Астрахань

Сообщение Kundor » 17.08.2006 (Чт) 15:50

ну вот - эпупея закончилась. файлы - в секретные материалы, потому как понять почему делается всё именно через такую жопу - непонятно.
проблема решается просто и странно: на машину ставится BDE. И всё! - работает.

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 17.08.2006 (Чт) 17:06

так все-таки это были не родные dbf :lol:


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

    TopList  
cron