Могу ли я использовать OLE DB провайдера при написании 64-разрядного приложения, читающего данные из mdb-файла?
Здесь: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/dasdkoledboverview.asp
пишут, что, Microsoft Jet OLE DB Provider изъят из MDAC 2.6 и выше.
Цитата:
"Deprecated Components (OLE DB)
The Microsoft Jet OLE DB Provider and other related components were removed from MDAC 2.6 and later. Microsoft has deprecated the Microsoft Jet Engine, and plans no new releases or service packs for this component. As a result, the Jet and Replication Objects (JRO) is being deprecated in this release and will not be available in any future MDAC releases."
А как быть? Изпользовать ADO.NET для совсем простой задачи, когда один-единственный mdb-файл на локальном диске прочитать-изменить нужно?
Задача ничуть не усложнилась в смысле организации доступа к данным, а способ ее решения зачем тогда усложнять?
Ранее пользовались DAO, а теперь назрела замена технологии. Какую выбрать?
То есть, почему я так переживаю. Придется теперь два проекта вести 32 и 64-bit, а хотелось бы иметь универсальный код. Если его сделать таковым, то придется всем клиентам, пользующимся 32-bit версией, оъяснять необходимость скачивания и установки NET.Framework.
Может кто знает как этот "прогресс" обмануть?
Заранее благодарен.
Re: Как организовать доступ к БД Access в 64-bit приложении?
Здравствуйте, vladimir37, Вы писали:
V>Могу ли я использовать OLE DB провайдера при написании 64-разрядного приложения, читающего данные из mdb-файла?
Да.
V>Здесь: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/oledb/htm/dasdkoledboverview.asp V>пишут, что, Microsoft Jet OLE DB Provider изъят из MDAC 2.6 и выше.
В MDAC 2.8 он есть.
Более того, MDAC 2.8 интегрирован в SP2 для WinXP и SP1 для WinXP64. Так что с доступом к mdb на обоих платформах проблем нет.
V>То есть, почему я так переживаю. Придется теперь два проекта вести 32 и 64-bit, а хотелось бы иметь универсальный код. Если его сделать таковым, то придется всем клиентам, пользующимся 32-bit версией, оъяснять необходимость скачивания и установки NET.Framework.
А вот здесь поподробнее. Как
необходимость скачивания и установки NET.Framework
связана с контекстом разговора об OLE DB?
В человечишке все должно быть прекрасненьким: и одёжка, и душенка, и мордочка, и мыслишки.
Re[2]: Как организовать доступ к БД Access в 64-bit приложен
BO>А вот здесь поподробнее. Как [q]необходимость скачивания и установки NET.Framework
связана с контекстом разговора об OLE DB?
[/q]
Разговор начинался о возможности использования OLE DB Jet провайдера в 64-разрядном коде, то, что будет поддерживаться 32-разрядный — понятно. Если OLE DB использовать нельзя, то останется только ADO.NET со всеми вытекающими...
Пожалуйста, помогите сориентироваться.
Не понятен также отрывок из MSDN, приведенный выше.
Re[3]: Как организовать доступ к БД Access в 64-bit приложен
Здравствуйте, vladimir37, Вы писали:
V>Пожалуйста, помогите сориентироваться.
Ориентирую.
ADO.NET ходит к .mdb через OleDb. Так что если есть провайдер — то всё равно как ходить: через адо или адо.нет.
В человечишке все должно быть прекрасненьким: и одёжка, и душенка, и мордочка, и мыслишки.
Re: Как организовать доступ к БД Access в 64-bit приложении?
Здравствуйте, vladimir37, Вы писали:
V>Могу ли я использовать OLE DB провайдера при написании 64-разрядного приложения, читающего данные из mdb-файла?
Да, но придётся поставить Office64 себе и всем кто будет работать с этим приложением.
... << RSDN@Home 1.2.0 alpha rev. 642>>
Re[4]: Как организовать доступ к БД Access в 64-bit приложен
BO>ADO.NET ходит к .mdb через OleDb. Так что если есть провайдер — то всё равно как ходить: через адо или адо.нет.
Дело в том, что провайдеры OLE DB и OLE DB .Net разные и поэтому не все равно, как писать программу.
Вопрос, какой подход выбрать. ADO.NET требует наличия .NET Framework как для 32-bit, так и 64-bit кода.
Использование простого OLE DB провайдера не требует наличия .NET Framework.
НО. Возможно ли это для 64-рязрядного приложения?
Re[2]: Как организовать доступ к БД Access в 64-bit приложен
Здравствуйте, Блудов Павел, Вы писали:
БП>Здравствуйте, vladimir37, Вы писали:
V>>Могу ли я использовать OLE DB провайдера при написании 64-разрядного приложения, читающего данные из mdb-файла? БП>Да, но придётся поставить Office64 себе и всем кто будет работать с этим приложением.
Pozhalujsta popodrobnee: chto eto Office64?
Re[2]: Как организовать доступ к БД Access в 64-bit приложен
Здравствуйте, Блудов Павел, Вы писали:
V>>Могу ли я использовать OLE DB провайдера при написании 64-разрядного приложения, читающего данные из mdb-файла?
БП>Да, но придётся поставить Office64 себе и всем кто будет работать с этим приложением.
Если он (OLE DB Jet провайдер 64-рязрядный) есть в Office64, то может его где скачать можно отдельно?
Наверняка кто-нибудь сталкивался с подобным?
Re[3]: Как организовать доступ к БД Access в 64-bit приложен
Здравствуйте, vladimir37, Вы писали:
V>Если он (OLE DB Jet провайдер 64-рязрядный) есть в Office64, то может его где скачать можно отдельно?
Пока нет. Но может и сделают когда нибудь.
Проблема вот в чём: 32-х битный Jet был разработан командой Windows-разработчиков и являлся частью MDAC'а.
Но сейчас его объявили deprecated и отдали индусам в команду Office. Так что Jet теперь часть офиса и не более.
ИМХО, сейчас лучше не заморачиваться с mdb-шками и переписать все на MDE. Не так много работы как кажется.
У access'а даже есть специпльный addin для этого upsize wizard или что-то вроде.
... << RSDN@Home 1.2.0 alpha rev. 642>>
Re[4]: Как организовать доступ к БД Access в 64-bit приложен
БП>ИМХО, сейчас лучше не заморачиваться с mdb-шками и переписать все на MDE. Не так много работы как кажется.
БП>У access'а даже есть специпльный addin для этого upsize wizard или что-то вроде.
На MDE переписать это как? Я MSDE знаю, но его еще установить надо будет пользователю.
А разве в Office64 не будет Access'а?
Re[4]: Как организовать доступ к БД Access в 64-bit приложен
Ан точно. Прога, запущенная на WinXP64, при попытке подключения к .mdb выдала ошибку: The 'Microsoft.Jet.OLEDB.4.0' provider is not registered on the local machine.
Век живи — век учись...
В человечишке все должно быть прекрасненьким: и одёжка, и душенка, и мордочка, и мыслишки.
Re[5]: Как организовать доступ к БД Access в 64-bit приложен