我有一个从csv文件动态创建的数据集.我想要做的是将行插入我的MS Access表,但我无法弄清楚从哪里开始.
数据集中数据的标题可以根据顺序而变化,但标题的名称将始终与访问数据库匹配.我是否必须在insert命令中静态调用标题名称,还是可以从数据集中构建标题?
我知道如何创建连接并将其打开到数据库但不知道如何在insert命令中创建动态拉动表头.
在C#编程方面我很绿,所以如果你能为我拼出来,我真的很感激!
以下是访问表标头的示例:
ID,项目,成本,零售
然后是CSV,它将填充数据集表.它可能有零售或可能没有:
物品,成本
这是我到目前为止的代码,但它没有写入访问表.如果我发现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();
Run Code Online (Sandbox Code Playgroud)