Сравните два csv файла с одинаковыми столбцами
Мне нужно импортировать два csv-файла в таблицу базы данных mysql, но когда я импортирую второй файл, я хочу сравнить его с первым файлом, вставленным в базу данных, и если есть разница в строке, я вставлю строку второго файла.
Я попытался импортировать непосредственно второй файл, но результат в базе данных все еще с данными первого файла также не организован.
Сначала я загрузил и сохранил первый файл, затем, когда я загрузил второй файл, я не увидел в таблице базы данных правильных данных второго файла, я хочу, чтобы метод обновился, если есть разница, или добавил новые строки, если они существуют во втором файле
Вот мой способ, чтобы импортировать и сохранить первый CSV-файл
Что я уже пробовал:
private void Import_Bilan_Click(object sender, EventArgs e) { DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog. if (result == DialogResult.OK) // Test result. { string file = openFileDialog1.FileName; string[] f = file.Split('\\'); // to get the only file name string fn = f[(f.Length) - 1]; string path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location); string dest = path + @"\upload\" + fn; //to copy the file to the destination folder File.Copy(file, dest, true); MessageBox.Show("File Uploaded !!"); //to copy the file to the destination folder File.Copy(file, dest, true); MySqlConnection con = new MySqlConnection("datasource=localhost;database=altares;port=3306;username=root;password=root;SslMode=none;AllowUserVariables=true"); var msbl = new MySqlBulkLoader(con) { TableName = "exercices", FieldTerminator = ";", FileName = dest, NumberOfLinesToSkip = 1, }; msbl.Columns.AddRange(new[] { "siren", "designation", "annee", "@discard", "@discard", "@discard", "@discard", "@discard", "AA", "AB", "AC", "AD", "AE", "AF", "AG", "AH", "AI", "AJ", "Ak", "AL", "AM", "AN", "AO", "AP", "AQ", "AR","@discard", "AT", "AU", "AV", "AW", "AX", "AY", "CS", "CT", "CU", "CV", "BB", "BC", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BK", "BL", "BM", "BN", "BO", "BP", "BQ", "BR", "BS","YP" }); msbl.Load(); con.Close(); MessageBox.Show("Bilan bind to database !!"); } }