То, что я пишу цикл для отображения похожих код товара на datagridview и вставить другой артикул по базе данных SQL-сервера
Проблема
Таблица элементов базы данных SQL Server(2014)
Артикул(ПК) наименование
001 мышь
002 клавиатура
003 наушники
В файле Excel sheet 2010
Наименование Артикул
001 мышь
002 клавиатура
004 экран
005 ОЗУ
На самом деле мне нужно при импорте файла excel вставлять разные элементы кода которых не существует
в базе данных sql server и существующие элементы в базе данных и найденные в Excel не вставляются, а отображаются в datagridview .
в соответствии с моим случаем вставьте itemcodes 004,005 на элементы таблицы.
и показать 001,002 в виде сетки как существующие элементы .
моя функция как показано ниже
Что я уже пробовал:
public static void ImportFromExcelToDataBase() { Datatable dt = ShowExcelData(); DataTable dtItems = GetSqlItems(); for (int i = 0; i < dt.Rows.Count; i++) { //what i write here // if itemcode exist on excel exist on sql server database then display similar items exist on database and excel as 001,002 on datagridview //else // do insert data string Insert = "Insert Into Values (" + data + ")"; DataAccess.ExecuteNonQuery(Insert); } } public DataTable ShowExcelData() { string connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=\"Excel 12.0 Xml;HDR=YES;IMEX=1\";", txtpath.Text); OleDbConnection con = new OleDbConnection(connectionString); con.Open(); DataTable dt = new DataTable(); dt = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null); string SheetName = dt.Rows[0]["TABLE_NAME"].ToString(); OleDbCommand com = new OleDbCommand(); com.Connection = con; com.CommandText = @"SELECT [ItemCode],[ItemsName],[ItemAddress] FROM [" + SheetName + "] "; OleDbDataAdapter oledbda = new OleDbDataAdapter(); oledbda.SelectCommand = com; DataSet ds = new DataSet(); oledbda.Fill(ds); dt = ds.Tables[0]; con.Close(); return dt; } dt = ShowExcelData(); public DataTable GetSqlItems() { string GetItems = @"select ItemCode,ItemsName,ItemAddress from Items"; DataTable tbGetItems = DataAccess.ExecuteDataTable(GetItems ); return tbGetItems ; } dtItems = GetSqlItems();