Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Поставщик данных .NET Framework для Oracle поддерживает тип данных Oracle REF CURSOR . При использовании поставщика данных для работы с Oracle REF CURSORs следует учитывать следующее поведение.
Замечание
Некоторые поведения отличаются от поведения поставщика Microsoft OLE DB для Oracle (MSDAORA).
В целях оптимизации производительности поставщик данных для Oracle не привязывает автоматически типы данных REF CURSOR, если вы их явно не укажете, как это делает MSDAORA.
Поставщик данных не поддерживает последовательности экранирования ODBC, включая последовательность экранирования {resultset}, используемую для указания параметров REF CURSOR.
Чтобы выполнить хранимую процедуру, возвращающую REF CURSORs, необходимо определить параметры в OracleParameterCollection с типом OracleType и параметр с направлением Direction. Поставщик данных поддерживает привязку REF CURSORs только в качестве выходных параметров. Поставщик не поддерживает REF CURSORs в качестве входных параметров.
Получение OracleDataReader из значения параметра не поддерживается. Значения имеют тип DBNull после выполнения команды.
Единственное значение перечисления CommandBehavior , которое работает с REF CURSORs (например, при вызове ExecuteReader) — CloseConnection; все остальные игнорируются.
Порядок REF CURSORs в OracleDataReader зависит от порядка параметров в OracleParameterCollection. Свойство ParameterName игнорируется.
Тип данных PL/SQL TABLE не поддерживается. Тем не менее, REF CURSORs более эффективны. Если необходимо использовать тип данных TABLE , используйте поставщик данных OLE DB .NET с MSDAORA.
В этом разделе
Примеры REF CURSOR
Содержит три примера, демонстрирующие использование REF CURSORs.
Параметры REF CURSOR в OracleDataReader
Демонстрируется выполнение хранимой процедуры PL/SQL, которая возвращает параметр REF CURSOR и считывает значение в виде OracleDataReader.
Получение данных из нескольких REF CURSORs с помощью OracleDataReader
Демонстрируется выполнение хранимой процедуры PL/SQL, которая возвращает два параметра REF CURSOR и считывает значения с помощью OracleDataReader.
Заполнение набора данных с помощью одного или нескольких REF CURSOR
Демонстрирует, как выполнить хранимую процедуру PL/SQL, которая возвращает два параметра REF CURSOR и заполняет DataSet возвращаемыми строками.