Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 301
от 13.06.2006, 13:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 176, Экспертов: 27
В номере:Вопросов: 1, Ответов: 1


Вопрос № 45621: Здравствуйте! Пишу на VB6 и всегда в качестве БД использовала Access. Сейчас необходимо, чтобы мои программы работали на разных версиях Access: 97, 2000, 2002. Как правильно поступить в таком случае? Что можно использовать в качестве БД для работ...

Вопрос № 45.621
Здравствуйте!
Пишу на VB6 и всегда в качестве БД использовала Access. Сейчас необходимо, чтобы мои программы работали на разных версиях Access: 97, 2000, 2002. Как правильно поступить в таком случае? Что можно использовать в качестве БД для работы с VB6, если придется от Access отказаться? Программы используются на персональных компьютерах пользователей.
Отправлен: 08.06.2006, 13:28
Вопрос задала: Neva (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Филатов Евгений Геннадьевич
Здравствуйте, Neva!

Я работаю точно также, пишу на VB6, базы Access.
Для работы с базами Access97 использую DAO, для Access2000 - ADO.
Для работы со всеми версиями Access необходимо работать при помощи ADO, связь через стандартный источник данных ODBC (зарегистрирован в системе под именем "База данных MS Access" и устанавливается при инсталляции Office2000 ).

Пример работы с базами:

Public dbf As New ADODB.Connection
Public r_1 As New ADODB.Recordset

dbf.Open "Persist Security Info=False;DSN=База данных MS Access;DBQ=Pr.mdb;DefaultDir=;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=300;UID=admin;"
r_tmp.Open "update predpr set ROs_file='" & Left(Trim(r2), 100) & "',RJit_file='" & Left(Trim(r3), 100) & "' where RNTR='" & r1 & "';", dbf
dbf.Close

Через стандартные источники данных ODBC можно работать с любыми базами, например далее в моей программе производится переключение на базу SQL Server2000 и в строке подключения меняется только источник DSN и указываются имя пользователя и пароль.

Еще пример для подключения баз Foxpro:
dbf2.Open "Persist Security Info=False;DSN=Файлы dBASE;DBQ=" & CurDir() & ";MaxBufferSize=2048;PageTimeout=300;"

От Access лучше не отказываться, т.к. все эти продукты разработаны Microsoft и отлично работают вместе.

Хочется спросить, почему используются разные версии баз?
Я устанавливал программы на различные компьютеры, причем программа работает с базой даже без установленного Office, не важно какой версии. Главное - при работе через DAO установить из инсталляции Office97 компонент "Доступ к данным", а при работе через ADO установить из инсталляции Office2000 компонент "Microsoft Excel для Windows / Надстройки / ODBC" и все будет работать отлично.

С уважением.
Ответ отправил: Филатов Евгений Геннадьевич (статус: 3-ий класс)
Ответ отправлен: 08.06.2006, 14:44
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2006, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Версия системы: 4.34 от 01.06.2006
Яндекс Rambler's Top100

В избранное