Member 9410081 Ответов: 2

Ошибка : Оракул.Доступа к данным.Клиент.OracleException: ORA-01722: неверный номер. Может ли любой 1 помочь мне устранить эту ошибку.


Ниже приведен запрос


(Опция" Select TO_CHAR(НВЛ(Макс(ИД),0)) С ветки, где верхний(BRANCHNAME) = ПРОПИСН(:Валь) и COMPANY_ID=:Company_ID ");


o_Cls_OracleConnect.OracleCommand_PreInit(sb.ToString());
         o_Cls_OracleConnect.Parameter_Int32("Company_ID", Company_ID);
         o_Cls_OracleConnect.Parameter_String("VAL", val);

         returnCount = Convert.ToInt32(o_Cls_OracleConnect.ExecuteScalar());
         return returnCount;
     }




public string ExecuteScalar()
    {
        try
        {
            obj_temp = MyCmd.ExecuteScalar();
            if (obj_temp == null)
            {
                s_temp = "";
            }
            else
            {
                s_temp = obj_temp.ToString();
            }
            return (s_temp);
        }
        catch (Exception ex)
        {
            throw ex;
        }
        finally
        {
            if (!(MyCmd == null))
            {
                MyCmd.Dispose();
            }
            MyCmd = null;
        }
    }



Ошибка возникает для вышеуказанной функции, которая ловит исключение : недопустимое число. Может ли любой 1 помочь мне устранить эту ошибку.

2 Ответов

Рейтинг:
2

Perry Bruins

Эй,

Вы используете to_char в своем списке выбора и пытаетесь преобразовать его в int32 в коде. Это не сработает....

С Уважением, Перри


Рейтинг:
1

Member 9380142

В драйвере C# Oracle ManagedDataAccess используйте это


Connection.Open();            
OracleGlobalization info = Connection.GetSessionInfo();
info.NumericCharacters = ".,";
Connection.SetSessionInfo(info);
ExecuteNonQuery();
Connection.Close();