Ich versuche, Integer-Wert in Access-Datenbank einzufügen, aber es gibt mir Object kann nicht von DBNull auf andere Typen umgewandelt werden. Fehler aber in Datagridview im Wert setzen, aber zeigen Sie mir diesen FehlerWarum Integer-Wert nicht in Access-Datenbank eingefügt wird
string Medicine_Name = dataGridView1.Rows[e.RowIndex].Cells["Medicine_Name"].Value.ToString();
string Dealer_name = dataGridView1.Rows[e.RowIndex].Cells["Dealer_name"].Value.ToString();
int Availability =Convert.ToInt16(dataGridView1.Rows[e.RowIndex].Cells["Availability"].Value);
if (dataGridView1.IsCurrentRowDirty)
{
string connectionString = null;
connectionString = ConfigurationManager.ConnectionStrings["AccessConnectionString"].ConnectionString;
con.ConnectionString = connectionString;
string cmd1 = "insert into Medicine_Available_Detail(Medicine_Name,Dealer_name,Availability) values(@Medicine_Name,@Dealer_name,@Availability)";
OleDbCommand cmd = new OleDbCommand(cmd1, con);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@Medicine_Name",Medicine_Name);
cmd.Parameters.AddWithValue("@Dealer_name", Dealer_name);
cmd.Parameters.AddWithValue("@Availability", Availability);
con.Open();
int n = cmd.ExecuteNonQuery();
con.Close();
if (n > 0)
{
MessageBox.Show("Data Inserted Successfully", "Data Inserted ", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
Der Fehler bedeutet, dass 'dataGridView1.Rows [e.RowIndex] .Cells [ "Verfügbarkeit"]. Value' gibt 'DBNull' zurück, das nicht in int umgewandelt werden kann (casted). Auf welcher Zeile tritt der Fehler auf? – surfmuggle
auf Availability Spalte und 2. Zeile Fehler tritt auf letzten 15 Tagen im Versuch, dieses Problem zu lösen, aber fehlgeschlagen – Atul