Насколько велик ваш dual
стол? Этот запрос:
select 1 from dual
Возвращает таблицу с одним столбцом, содержащую столько строк, сколько таблица dual
, по 1 в каждой строке. Если в таблице миллионы строк, меня не удивит, если она выдаст исключение нехватки памяти.
Редактировать Конечно, это не объясняет, почему это будет работать на XP, но не на Vista, если это не связано с реализацией (запрос другого экземпляра базы данных на двух разных рабочих станциях пример). * * +1010
Редактировать 2:
Хорошо, предположительно, в dual
есть только одна строка, так как ваш комментарий указывает, что запрос возвращает только одну строку.
Пара вещей для расследования:
Для соединения Oracle ADO.NET требуется клиентское программное обеспечение Oracle, верно? Является ли ПО Oracle на вашем компьютере с Vista той же версией, что и на компьютере с XP? Возможно, здесь есть расхождение.
Вместо отображения e.Message
попробуйте показать e.ToString()
, чтобы получить полную трассировку стека - это может дать вам более полное представление о том, откуда выдается ошибка.