Я получил информацию об ошибке, когда пытался выполнить свою программу кодирования на C #.Я пытаюсь вставить данные, используя datagridview в C #, но когда я попытался, я получил эту информацию об ошибке. "Необработанное исключение типа 'Oracle.DataAccess.Client.OracleException' произошло в Oracle.DataAccess.dll Дополнительная информация: внешний компонент выдал исключение" .Вот моя программа кодирования:
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
INST_NO = dataGridView1.Rows[e.RowIndex].Cells["INST_NO"].Value.ToString();
if (INST_NO == "")
{
INST_NO1 = 0;
}
else
{
INST_NO1 = Convert.ToInt32(dataGridView1.Rows[e.RowIndex].Cells["INST_NO"].Value.ToString());
}
if (INST_NO1 == 0)
{
OracleCommand cmd = conn.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "INSERT INTO TMCI_IM_PROD VALUES('" + dataGridView1.Rows[e.RowIndex].Cells["INST_NO"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["ITM_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["LINE_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_LOC_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_SCHD_QTY"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_ST_SCHD_DT"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_END_SCHD_DT"].Value.ToString() + "','" + dataGridView1.Rows[e.RowIndex].Cells["ORD_STS_TYP"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["CAVITY"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["RESULT_1"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["RESULT_2"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["TRANSFER_1"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["TRANSFER_2"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["INS_TS"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["INS_USR_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["UPD_TS"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["UNIT_WT"].Value.ToString() + "')";
cmd.ExecuteNonQuery();
fill_grid();
}
else
{
OracleCommand cmd = conn.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "UPDATE TMCI_IM_PROD SET INST_NO='" + dataGridView1.Rows[e.RowIndex].Cells["ITM_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["LINE_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_LOC_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_SCHD_QTY"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_ST_SCHD_DT"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["PROD_END_SCHD_DT"].Value.ToString() + "','" + dataGridView1.Rows[e.RowIndex].Cells["ORD_STS_TYP"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["CAVITY"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["RESULT_1"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["RESULT_2"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["TRANSFER_1"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["TRANSFER_2"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["INS_TS"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["INS_USR_CD"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["UPD_TS"].Value.ToString() + "', '" + dataGridView1.Rows[e.RowIndex].Cells["UNIT_WT"].Value.ToString() + "' WHERE INST_NO=" + INST_NO1 + "";
cmd.ExecuteNonQuery();
fill_grid();
}
}
Я пытался многими другими способами, но я не нашел, как преодолеть эту проблему.Кто-нибудь может помочь мне решить эту проблему?Заранее спасибо.