проблемка с DBF

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

проблемка с DBF

Сообщение Kirill1983 » 05.05.2005 (Чт) 11:38

Доброго всем дня
Возникло затруднение с подключением в файлам dbf:
Код: Выделить всё

Dim con As ADODB.Connection
Dim rs As ADODB.Recordset

Set Conn = New ADODB.Connection
Conn.ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};" & _
                        "DriverID=277;Dbq=c:\;Exclusive=No"
Conn.Open
Set rs = New ADODB.Recordset
Set rs = Conn.Execute("select * from AZS.dbf")

Файл С:\AZS.dbf
В результате кидает ошибку "Непредвиденная ошибка драйвера внешней базы данных (8961)"
Помогите добрым советом :wink: [/syntax]

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

Сообщение Konst_One » 05.05.2005 (Чт) 11:58

попробуй:
Код: Выделить всё
select * from AZS


и проверь наличие такого драйвера в списках драйверов ODBC на своем компе

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 12:18

Konst_One писал(а):попробуй:
Код: Выделить всё
select * from AZS


и проверь наличие такого драйвера в списках драйверов ODBC на своем компе

Есть драйвер для SQL Server'a и SQL-запрос не меняет результата...та же ошибка...
http://hghltd.yandex.com/yandbtm?url=ht ... &d=1623692 у меня папки Borland вообще нет. :(

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

Сообщение Konst_One » 05.05.2005 (Чт) 12:24

попробуй с использованием другого ODBC драйвера, например:
Microsoft Visual FoxPro Driver

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

Сообщение Konst_One » 05.05.2005 (Чт) 12:25

BDE нужен лишь для модификации данных в таблицах, для просмотра он не нужен.

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 12:39

Konst_One писал(а):попробуй с использованием другого ODBC драйвера, например:
Microsoft Visual FoxPro Driver

Код: Выделить всё

con.ConnectionString = "Driver={Microsoft Visual FoxProDriver};" & _
                       "SourceType=DBF;SourceDb=c:"
con.Open

Ошибка: [Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер,используемый по умолчанию

Ennor
Конструктивный критик
Конструктивный критик
 
Сообщения: 2504
Зарегистрирован: 18.12.2001 (Вт) 3:58
Откуда: Калуга -> Москва

Сообщение Ennor » 05.05.2005 (Чт) 12:41

Используй Jet.

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 12:51

Ennor писал(а):Используй Jet.

Код: Выделить всё

con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\;" & _
                       "Extended Properties=dBase 5.0;Persist Security Info=False"

con.Open

Set rs = New ADODB.Recordset
Set rs = con.Execute("select * from AZS")

Все та же непредвиденная ошибка драйвера внешней базы данных (8961) :?:

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

Сообщение Konst_One » 05.05.2005 (Чт) 13:17

если в этой табличке нет никаких секретных данных, то выложи ее сюда - посмотрим.

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 13:33

Konst_One писал(а):если в этой табличке нет никаких секретных данных, то выложи ее сюда - посмотрим.

Вот
Вложения
AZS.rar
(2.95 Кб) Скачиваний: 66

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

Сообщение Konst_One » 05.05.2005 (Чт) 14:05

это файл xBase
обязательно нужен BDE

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 14:37

Konst_One писал(а):это файл xBase
обязательно нужен BDE

Скачал BDE библиотеку и инстальнул,а теперь,извини за ламерство...что делать дальше?

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

Сообщение Konst_One » 05.05.2005 (Чт) 14:43

открой TotalCommander и в нем добавь плагин xBaseView 5.0 и открой свою табличку

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 15:08

Konst_One писал(а):открой TotalCommander и в нем добавь плагин xBaseView 5.0 и открой свою табличку

СПАСИБО тебе Konst_One,но вот проблемка еще выскочила-присваиваю гриду рекордсет и...Run-time error '7004'. Т.е. у меня нет выхода,кроме как через ADO открывать?

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

Сообщение Konst_One » 05.05.2005 (Чт) 15:15

что за грид и как ты рекордсет присваиваешь?

и пришли:
Код: Выделить всё
Debug.Print Err.Number & ": " & Err.Description & ". " & Err.Source

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 15:50

Konst_One писал(а):что за грид и как ты рекордсет присваиваешь?

и пришли:
Код: Выделить всё
Debug.Print Err.Number & ": " & Err.Description & ". " & Err.Source

7004: The rowset is not bookmarkable.. DataGrid

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

Сообщение Konst_One » 05.05.2005 (Чт) 15:59

Код: Выделить всё
Set rs=New ADODB.Recordset
Set rs.ActiveConnection=con
rs.CursorLocation=adUseClient
rs.Open "SELECT * FROM AZS", , adOpenStatic, adLockReadOnly, adCmdText

Set DataGrid1.DataSource=rs

Kirill1983
Обычный пользователь
Обычный пользователь
 
Сообщения: 78
Зарегистрирован: 05.05.2005 (Чт) 11:27

Сообщение Kirill1983 » 05.05.2005 (Чт) 16:12

От всей души выражаю Konst_One благодарность в оказании помощи и уделении мне внимания. Спасибо :D


Вернуться в Visual Basic 1–6

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

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

    TopList