Problems with OracleString null parameters value;
479772Jan 1 2006 — edited Jan 4 2006I'm trying to write code like this:
OracleDecimal _userId = new OracleDecimal(10);
OracleString _commentaire = OracleString.Null;
.... // Some code to set the values of userid and commentaire
OracleCommand oCom1 = new OracleCommand();
oCom1.CommandType = System.Data.CommandType.StoredProcedure;
oCom1.CommandText = "I_DEMANDE_COMPTE";
oCom1.Parameters.Add("pDC_ID",OracleDbType.Decimal, System.Data.ParameterDirection.Output);
oCom1.Parameters.Add("pDC_USER", OracleDbType.Decimal, System.Data.ParameterDirection.Input);
oCom1.Parameters.Add("pDC_COMMENTAIRE", OracleDbType.NVarchar2, System.Data.ParameterDirection.Input);
oCom1.Parameters["pDC_COMMENTAIRE"].Size = 2000;
oCom1.Parameters["pDC_USER"].Value = _userid;
oCom1.Parameters["pDC_COMMENTAIRE"].Value = _commentaire;
oCom1.Connection = oConn;
oCom1.ExecuteNonQuery();
....
Whenever _commentaire is null, I get the following an exception at the ExecuteNonQuery line
[OracleNullValueException: Opération sur les données NULL non valide]
Oracle.DataAccess.Types.OracleString.get_Length()
Oracle.DataAccess.Client.OracleParameter.GetBindingSize_Char(Int32 idx)
Oracle.DataAccess.Client.OracleParameter.PreBind_Char()
Oracle.DataAccess.Client.OracleParameter.PreBind(OracleConnection conn, IntPtr errCtx, Int32 arraySize)
Oracle.DataAccess.Client.OracleCommand.ExecuteNonQuery()
Oracle.DataAccess.Client.OracleCommand.ExecuteNonQuery()
DemandesSI.Types.CCompte.CCompte.Insert(OracleConnection oConn) in c:\inetpub\wwwroot\demandessi\types\ccompte\ccompte.cs:135
.....
What is the mean to manage the null values?