Набор данных C # для доступа к базе данных

У меня есть набор данных, который динамически создается из файла csv. Что я хочу сделать, так это вставить строки в мою таблицу MS Access, но я не могу понять, с чего начать.

Заголовки данных в наборе данных могут варьироваться в зависимости от порядка, но имя заголовка всегда будет соответствовать базе данных доступа. Должен ли я статически вызывать имя заголовка в команде вставки или я могу построить заголовки из набора данных?

Я знаю, как создать соединение и открыть его в базе данных, но не уверен, как создать в команде вставки для динамического извлечения заголовков таблицы.

Я довольно зеленый, когда дело касается программирования на C #, поэтому, если вы можете объяснить это для меня, я был бы очень признателен!

Вот пример заголовков таблицы доступа:

ID, Item, Cost, Retail

Затем CSV, который заполнит таблицу набора данных. У него может быть Retail, а может и нет:

Item, Cost

Вот код, который у меня есть, но он не записывается в таблицу доступа. Если я просматриваю dtAccess, он показывает правильно.

 OleDbConnection myConnection = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\"C:\\Database.accdb\";Persist Security Info=False;");
                myConnection.Open();

                string queryString = "SELECT * from " + lblTable.Text;

                OleDbDataAdapter adapter = new OleDbDataAdapter(queryString, myConnection);

                DataTable dtAccess = new DataTable();

                DataTable dtCSV = new DataTable();

                dtCSV = ds.Tables[0];

                using (new OleDbCommandBuilder(adapter))
                {
                    adapter.Fill(dtAccess);
                    dtAccess.Merge(dtCSV);
                    adapter.Update(dtAccess);
                }

                myConnection.Close();
6
задан Reg 10 November 2011 в 21:51
поделиться