Member 11973948 Ответов: 0

ODP.NET 12С oracle.manageddataaccess.dll 4.121.2.0 / ошибка неподдерживаемый тип столбца


Я заменил "Оракула".DataAccess.dll" в моей visual studio с " Oracle.ManagedDataAccess.dll" 4.121.2.0 и сборка прошла успешно.

но когда я пытаюсь запустить код он выдает ошибку говоря
"неподдерживаемый тип столбца".
cmdObj.ExecuteNonQuery();



Но я читал, что эта последняя версия поддерживает столбец "xmltype", но почему он терпит неудачу? нужно ли мне что-то менять?

[EDIT - код, вызывающий исключение (из комментария OP)]
try
 {
 Oracle.ManagedDataAccess.Client.OracleConnection connObj = new Oracle.ManagedDataAccess.Client.OracleConnection();
 //OracleConnection objConn = new OracleConnection();
 connObj.ConnectionString = "Data Source=" + Constants.DataSource + "; User ID=" + Constants.UserId + "; Password=" + Constants.Password;
 Oracle.ManagedDataAccess.Client.OracleCommand cmdObj = new Oracle.ManagedDataAccess.Client.OracleCommand("GetXSLT", connObj);
 cmdObj.CommandType = CommandType.StoredProcedure;

 cmdObj.Parameters.Add("XSLTName", Oracle.ManagedDataAccess.Client.OracleDbType.Varchar2).Value = xsltName;
 cmdObj.Parameters.Add("ReqXSLT", Oracle.ManagedDataAccess.Client.OracleDbType.XmlType).Direction = ParameterDirection.Output;
 connObj.Open();
 cmdObj.ExecuteNonQuery();

What I have tried:

I have replaced the  "Oracle.DataAccess.dll"  in my visual studio with "Oracle.ManagedDataAccess.dll" 4.121.2.0 and the build was successful.

CHill60

Это может помочь поделиться кодом, который терпит неудачу

Member 11973948

Оракул.ManagedDataAccess.Типы.OracleXmlType xmlType;

пробовать
{
Оракул.ManagedDataAccess.Клиент.OracleConnection connObj = новый Оракул.ManagedDataAccess.Клиент.Объекта oracleconnection();
//OracleConnection objConn = новый OracleConnection();
конноби.ConnectionString = "Источник Данных=" + Константы.Источник данных +"; идентификатор пользователя= " + константы.UserId +"; Password= " + Константы.Пароль;
Оракул.ManagedDataAccess.Клиент.OracleCommand cmdObj = новый Оракул.ManagedDataAccess.Клиент.OracleCommand ("GetXSLT", connObj);
cmdObj.CommandType = CommandType.Хранимая процедура;

cmdObj.Параметры.Добавить("XSLTName", Оракул.ManagedDataAccess.Клиент.OracleDbType.Varchar2).Значение = xsltName;
cmdObj.Параметры.Добавить("ReqXSLT", Оракул.ManagedDataAccess.Клиент.OracleDbType.XmlType).Направление = ParameterDirection.Выход;
конноби.Открыть();
cmdObj.Метод executenonquery();

Member 11973948

Здесь я добавил кусок кода, cmdObj.ExecuteNonQuery (); выдает исключение

[no name]

Прочтите это : http://stackoverflow.com/questions/25489730/unsupported-column-datatype-odp-net

Member 11973948

я читал эту статью, в которой говорится,что xmltype поддерживается начиная с odac release 3, Теперь я использую odac release4, поэтому мне интересно, если что-то не так в коде или это что-то связано с dll.

Member 10954183

Я сталкиваюсь с той же проблемой. Однако в нашем случае это происходит не на всех серверах, которые у нас есть. Один и тот же вызов хранимой процедуры выдаст эту ошибку на одном сервере и будет отлично работать на другом, с той лишь разницей, что это сервер. Кто-нибудь еще испытал это и смог точно определить, в чем разница?

У меня открыт билет в службу поддержки oracle. Я обновлю эту тему, если получу из нее что-нибудь полезное.

Member 11026257

Привет, я тоже получаю ту же ошибку. как вы это исправили? можете ли вы пожалуйста, обновите?

Member 11026257

Любое решение этого вопроса.Можете ли вы пожалуйста, обновите?

0 Ответов