Вопросы следующие. Некий soft (поставляемый очень большому числу клиентов) использует некую СУБД (Access, SQL Server, Oracle, ...). Доступ к данным осуществляется через "Си"-шные ADO-интерфейсы при помощи а)файла dsn, b)системного dsn или с)файла udl.
1)
Что произойдет, если измениться версия используемой СУБД и соответствующий драйвер/провайдер? Если использовался, скажем, Access 97, а затем пользователь установил Access 2000 (а саму базу не трогал), останется ли валидным файл dsn?
А если пользователь преобразовал и саму базу к 2000'му формату?
2)
В dsn и udl файлах прописывается имя используемого драйвера/провайдера: DRIVER=Microsoft Access Driver (*.mdb)
или
Provider=OraOLEDB.Oracle.1.
Возможны ли изменения параметров драйвера/провайдера, которые приведут к тому, что Connection с использованием старого файла устанавливаться перестанет? Может, где-нибудь в документации Microsoft гарантируется такого рода совместимость?
3)
Переконфигурируются ли системные dsn'ы при обновлении соответствующего драйвера?
Если нет, то остаются ли они рабочими?
Организационные меры (заставить всех пользователей что-нибудь перенастроить) крайне нежелательны, поскольку слишком уж этих пользователей много. Хотелось бы организовать работу с данными так, чтобы при выходе новых версий используемых СУБД оставалось возможным работать БЕЗ изменения настроек соединения с базой.
P.S.
И, кстати, есть ли в вышеупомянутой документациии места, где толково разъясняется, что может и чего не может тот или иной драйвер? Особенно интересуют MS драйверы для Oracle (не дело это, когда при попытке обновления recordset'а тебе говорят, что "Current recordset does not support updating. This maybe a limitation of the provider").