从数据集复制到C#中的访问表?

时间:2010-07-26 21:28:45

标签: c# ms-access dataset

我有一个数据集(来自XML文件),我想从这个数据集中读取模式和值并将其复制到访问表中。

我想在飞行中创建访问数据库(可以使用ADOX),创建访问表(来自ADOX)在此表中创建模式并将数据集中的值复制到此表中。

当我尝试创建表并在其中添加列时出现错误,下面是给出错误的代码段

      DataSet ds = new DataSet();
      Console.Write("The NAME IS" + FileName.Text.ToString());
      ds.ReadXml("FILE_PATH" + FileName.Text.ToString());


      ADOX.Catalog cat = new Catalog();
      cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='DATABASE_NAME';Jet OLEDB:Engine Type=5");

      Table tab = new Table();
      tab.Columns.Append("Column Name", DataTypeEnum.adVarChar, 50);

//我以这种方式插入32个列

      cat.Tables.Append(tab);

当我运行此代码块时,我得到COM异常:“TableID无效”。

我是否尝试以正确的方法做到这一点?如何将数据集中的值复制到此表?

1 个答案:

答案 0 :(得分:0)

您可以尝试为表格指定名称吗?

tab.TableName = "MyName";