Donc dans mon programme, j'ai deux bases de données. L'un est "CurrentCargo", l'autre est "PastOrders"Comment déplacer une ligne d'une table dans une base de données à une autre?
Ce que je voulais faire est que lorsque la case à cocher dans la table de "CurrentCargo" a été cochée, il faudra prendre les variables dans la ligne et le déplacer dans la table des "PastOrders". Comme le montre l'image ci-dessous: Tick in tick box triggers a movement of row values donc ce que je tapais mon code:
private void CurrentCargoTable_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (e.ColumnIndex == 9 && e.RowIndex >= 0)
{
bool Check = Convert.ToBoolean(CurrentCargoTable.Rows[e.RowIndex].Cells[e.ColumnIndex].Value);
int Index = 0;
int Code;
DateTime ImportDate;
DateTime ExportDate;
string From;
string To;
string TransportMode;
string Supplier;
Decimal Cost;
bool Payed;
bool Delivered;
if (Check == true)
{
Index = CurrentCargoTable.CurrentCell.RowIndex;
Code = (int)CurrentCargoTable.Rows[Index].Cells[1].Value;
ImportDate = (DateTime)CurrentCargoTable.Rows[Index].Cells[2].Value;
ExportDate = (DateTime)CurrentCargoTable.Rows[Index].Cells[3].Value;
From = (String)CurrentCargoTable.Rows[Index].Cells[4].Value;
To = (String)CurrentCargoTable.Rows[Index].Cells[5].Value;
TransportMode = (String)CurrentCargoTable.Rows[Index].Cells[6].Value;
Supplier = (String)CurrentCargoTable.Rows[Index].Cells[7].Value;
Cost = (Decimal)CurrentCargoTable.Rows[Index].Cells[8].Value;
Payed = false;
Delivered = false;
string sql = string.Format("insert into dataGridView1 (Code, Import_Date, Export_Date, From, To, TransportMode, Supplier, Cost, Payed, Delivered) values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}');", Code, ImportDate, ExportDate, From, To, TransportMode, Supplier, Cost, Payed, Delivered);
this.tableTableAdapter1.Insert(sql);
this.tableAdapterManager1.UpdateAll(this.pastOrdersDataSet);
dataGridView1.Update();
Mais il ne fonctionne toujours pas. J'ai essayé d'utiliser une boîte de message pour voir si les variables stockent les bonnes valeurs. Et chacun a la valeur que je voulais. Donc, j'ai un peu le rôle de "lecture", mais je n'ai pas le rôle de "l'écriture".
S'il vous plaît aidez-moi si quelqu'un le sait, merci.
ne fonctionnent pas avec les valeurs de la table. Travailler avec des données sous-jacentes. Si vos données sous-jacentes sont 'Liste' alors il est simple - 'Db2Prsister.Insert (myList [idx]); Db1Prsister.Delete (myList [idx]); '. Vous avez simplement déplacé l'enregistrement d'un DB à l'autre. Bien sûr, EF aiderait avec la vitesse de développement de ceci –