В настоящее время я работаю над проектом, в котором мы недавно обновили нашу версию Oracle с 11g до 12c на нашем тестовом сервере, а также мою локальную установку для разработки.
После обновления моей локальной установки я обновил свой ODAC (в основном для Oracle.DataAccess.dll), чтобы использовать 32-разрядную версию 12c. Потребовалось немного проб и ошибок, а также удаление и переустановка ODAC, прежде чем я наконец смог снова подключиться к своей БД.
Сейчас мы рассматриваем возможность обновления ODAC тестового сервера. Я выполнил установку вчера и, как и в случае с моим локальным, я не смог подключиться к БД.
Я поместил файл tnsnames.ora на его место, и этот файл является просто копией оригинала. Я использовал тестовую программу, чтобы узнать, могу ли я вообще открыть соединение, что я могу сделать с помощью новой Oracle.DataAccess.dll. Однако, когда я пытаюсь импортировать это на основной сайт, мы не можем подключиться. Это происходит даже после того, как я удалю исходную ссылку, добавлю новую, указывающую на расположение Oracle.DataAccess.dll.
Мой коллега упомянул, что не имеет значения, какая у нас версия ODAC (11g или 12c), версия 11g должна без проблем подключаться к базе данных 12c. Я как бы сомневаюсь в этом, поскольку он делал такие заявления в прошлом по другим вопросам, а также тот факт, что он согласился с тем, что изначально нам необходимо обновить ODAC.
Это верное утверждение? Если нет, могу ли я предпринять какие-либо шаги для решения проблемы, кроме удаления и повторной установки? Это не должно требовать таких усилий, лол.
ОБНОВЛЕНИЕ: я подтвердил, что мой коллега был прав, использование 11g ODAC на 12c Oracle DB действительно работает. Однако, лол, он удалил его, прежде чем я смог поговорить с ним об этом, так что да...
Я все еще нахожу подобную проблему даже после удаления ODAC 11g. Мой коллега также очистил записи реестра, в которых было несколько ссылок на 11g, но, тем не менее, у нас есть проблемы.
ОБНОВЛЕНИЕ (8/8/2017): проблема наконец-то решена. Установленный мной 12c ODAC был несовместим с версией Visual Studio, которую я использовал на сервере (VS 2012). Изучив требования к ODAC, я обнаружил это и закатил глаза на это осознание. Мы удалили 12c ODAC и переустановили 11g ODAC. Все теперь нормально работает.
Я попросил обновить VS, чтобы в будущем у нас была совместимая версия для работы. Да вряд ли это случится, лол...