Я хотел бы знать, когда я загружаю данные в datagridview, чтобы обновить их, после добавления новых строк в существующие строки, как я могу обновить новые добавленные строки без дублирования существующих строк.Вот мой код
private void btnedit_Click(object sender, EventArgs e)
{
DynamicConnection con = new DynamicConnection();
try
{
if (txtPONo.Text != "" || cmbsupID.Text != "" || date1.Text != "" || requireddate.Text != "" || txtgrandTotal.Text != "")
{
PurchaseOrder PO = new PurchaseOrder();
if (cmbsupID.Text.Contains('-'))
{
string str = cmbsupID.Text;
int index = str.IndexOf('-');
if (index > 0)
{
int value = int.Parse(str.Substring(0, index));
PO.UpdatePurchseOrderTable(Convert.ToInt32(txtPONo.Text), value, date1.Text, requireddate.Text, Convert.ToDouble(txtgrandTotal.Text));
}
}
else
{
int value2 = Convert.ToInt32(cmbsupID.Text);
PO.UpdatePurchseOrderTable(Convert.ToInt32(txtPONo.Text), value2, date1.Text, requireddate.Text, Convert.ToDouble(txtgrandTotal.Text));
}
for (int i = 0; i < dataGridView1.Rows.Count-1; i++)
{
int PONO = Convert.ToInt32(txtPONo.Text);
string column1 = Convert.ToString(dataGridView1.Rows[i].Cells[1].Value);
int column2 = Convert.ToInt32(dataGridView1.Rows[i].Cells[2].Value);
double column3= Convert.ToDouble(dataGridView1.Rows[i].Cells[3].Value);
double column4 = Convert.ToDouble(dataGridView1.Rows[i].Cells[4].Value);
PO.UpdatePOCartTable(PONO,column1,column2,column3,column4);
}
}
else
{
MessageBox.Show("Please Provide Details!");
}
dataGridView1.Rows.Clear();
ClearData();
retviewPO_No();
MessageBox.Show("Record Updated Successfully");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
дополнительный - в моей программе, которая имеет сетку просмотра для вставки, обновления или удаления заказа на покупку и ведет себя как корзина для покупок. Эта таблица данных состоит из BookName, ISBNNo, количества заказа, цены за единицуи итого. Когда я вставляю эти данные сетки данных в базу данных, каждая строка вставляется с уникальным идентификатором PO_Cart_No (pk), который имеет значение идентификатора.
А также другие детали фонового текстового поля, которые представляют собой Po_No, supplier_Id и общие итоговые данные, вставляются вотдельная таблица, которая называется таблицей PO. А также эти две таблицы связаны с внешним ключом PO_No. Мой вопрос заключается в том, когда я добавляю новую строку в существующую строку для обновления базы данных, эта новая строка не вставляется, и обновляются только другие данные строки.