c# - object reference not set to an instance of object sending empty value to sql table -
I get this error
Object is not set to an instance of reference object
When a SQL Server database tries to send an empty value, the column
NULL assumes that this is the code of my table[Code] [id] [int] identification (1,1) no tap, [numeric] [varchar] (100) tap, [dais] [novework] (10) tap, [lagg] [nervous] (max) tap , [Worker] [int] tap, [inotohor] [nerve] (30) tap, [overtime] [IN T], [urmentia] [nerve] (50) NULL, [viaje] [Navvaker] (50) Faucet, [Almerovers] [decimal] (12, 2) faucet, [PAGE] [decimal] (12, 2) (SqlCOMM = New SqlCommand ("" InsertarDatosReporte ", SqlCON); SqlCOMM.CommandType = System.Data.CommandType.StoredProcedure; SqlCOMM.Parameters.Add ("@ numeroreporte", System.Data.SqlDbType.NVarChar); SqlCOMM.Parameters.Add ("@sp_dias", System.Data.SqlDbType.NVarChar); SqlCOMM.Parameters.Add ("@sp_lugar", System.Data.SqlDbType.NVarChar); SqlCOMM.Parameters.Add ("@ sp_workorder", System.Data.SqlDbType.VarChar); SqlCOMM.Parameters.Add ("@sp_InOutHour", System.Data.SqlDbType.NVarChar); SqlCOMM.Parameters.Add ("@sp_overtime", System.Data.SqlDbType.Int) .ostring (); SqlCOMM.Parameters.Add ("@ sp_emergencia", System.Data.SqlDbType.NVarChar); SqlCOMM.Parameters.Add ("@sp_viaje", System.Data.SqlDbType.NVarChar); SqlCOMM.Parameters.Add ("@sp_almuerzo", System.Data.SqlDbType.Decimal); SqlCOMM.Parameters.Add ("@sp_peaje", System.Data.SqlDbType.Decimal); SqlCOMM.Parameters.Add ("@sp_otros", System.Data.SqlDbType.Decimal); Try {SqlCON.Open (); Foreach (DatagridViewRow line in dgv.Rows) {if (! Row.IsNewRow) {sqlCOMM.Parameters ["@ numeroreporte"] Value = linkLB.Text; SqlCOMM.Parameters ["@ sp_dias"]. Value = line. Seals [0]. Valal.ToString (); SqlCOMM.Parameters ["@ sp_lugar"]. Value = line. Seals [1]. Value Toasting (); SqlCOMM.Parameters ["@ sp_workorder"]. Value = line. Seals [2] value; SqlCOMM.Parameters ["@ sp_InOutHour"]. Value = line. Seals [3]. Valal.ToString (); SqlCOMM.Parameters ["@ sp_overtime"]. Value = line. Cell [4]. value; SqlCOMM.Parameters ["@sp_emergencia"]. Value = row.kel [5]. Value ToString (); SqlCOMM.Parameters ["@ sp_viaje"]. Value = line. Seals [6]. Value ToString (); SqlCOMM.Parameters ["@sp_almuerzo"]. Value = line. Seals [7]. value; SqlCOMM.Parameters ["@sp_peaje"]. Value = line. Cell [8]. value; SqlCOMM.Parameters ["@ sp_otros"]. Value = line. Cell [9]. value; SqlCOMM.ExecuteNonQuery (); }}} Hold (SqlException East) {Message Box.Show (ex.Message); } Hold (Exception pre) {Message Box. Show (ex.Message); } Finally {sqlCON.Close (); The error message that you received shows that a cell where you have the "<">
Use value.ToString () is actuallynull . You can not callToString on the object that does not exist.There is a solution that you call cell
value before and, if it iszero , the parametervalue toAssign DBNull.Value A better option would be to bind only the grid toDataTable and then in the blank cell,DBNull.Value will be included in the database by returning you back to the database inDataTable , so there will be no loop.
Comments
Post a Comment