我有一个包含8列的数据网格,前6列是从SQL表填充的,最后2列是由用户填写并保存到另一个表中,用户将输入数字数据(double);如何在跳过用户留下黑色的单元格时立即保存两列数据。 目前我能够将数据保存到数据库,但它要求所有单元格都有数据或至少为零。我使用以下代码:
using (SqlConnection conn = Conexion.Conectado())
for (int i = 0; i < Dgv_registro_pagos.Rows.Count - 0; i++)
{
String GuardarBD = "Insert into Registro_pagos (Monto_pago, fk_prestamo_id, Mora, fecha_pago) Values (@Monto_pago, @fk_prestamo_id, @Mora, @fecha_pago) ";
SqlCommand cmd = new SqlCommand(GuardarBD, conn);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@fk_prestamo_id", Dgv_registro_pagos.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@Monto_pago", Dgv_registro_pagos.Rows[i].Cells[8].Value);
cmd.Parameters.AddWithValue("@Mora", Dgv_registro_pagos.Rows[i].Cells[9].Value);
cmd.Parameters.AddWithValue("@fecha_pago", DateTime.Now);
cmd.ExecuteNonQuery();
conn.Close();
}
答案 0 :(得分:0)
{
using (SqlConnection conn = Conexion.Conectado())
for (int i = 0; i < Dgv_registro_pagos.Rows.Count - 0; i++)
{
if (Dgv_registro_pagos.Rows[i].Cells[8].Value != null &&
Dgv_registro_pagos.Rows[i].Cells[9].Value != null)
{
String GuardarBD = "Insert into Registro_pagos (Monto_pago, fk_prestamo_id, Mora, fecha_pago) Values (@Monto_pago, @fk_prestamo_id, @Mora, @fecha_pago) ";
SqlCommand cmd = new SqlCommand(GuardarBD, conn);
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@fk_prestamo_id", Dgv_registro_pagos.Rows[i].Cells[2].Value);
cmd.Parameters.AddWithValue("@Monto_pago", Dgv_registro_pagos.Rows[i].Cells[8].Value);
cmd.Parameters.AddWithValue("@Mora", Dgv_registro_pagos.Rows[i].Cells[9].Value);
cmd.Parameters.AddWithValue("@fecha_pago", DateTime.Now);
cmd.ExecuteNonQuery();
conn.Close();
}
}
}