我现在想写一个保存的方法,让生成的DataTable保存在新表中,然后让用户指定数据库(Access),最后将新表添加到这个数据库中,请教有这方面经验的朋友!

解决方案 »

  1.   

    http://sz.luohuedu.net/xml/ShowDetail.asp?id=275E8772-A68A-417F-FD66-B75EA44499A4如何在.NET框架下创建Access数据库和表?
      

  2.   

    二、生成Access 数据库
    Access 毕竟是一个数据库,所以Excel上述第一种方法,无法适用。
    创建Access 数据库文件可以使用  ADOX,
    ADOX与OleDB的区别:ADOX是 data api 只是一个接口, OLEDB 是数据提供者,API 去调用 数据提供者。范例代码:
    使用前,请添加引用 Microsoft ADO Ext. 2.x for DDL and Security   根据你的操作系统,可能这里的版本也不一样。using ADOX; using System.IO; public static void CreateAccessFile(string FileName) ...{ if(!File.Exists(FileName)) ...{ ADOX.CatalogClass cat = new ADOX.CatalogClass(); cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileName +";"); cat = null; } }上述代码只是生成了Access数据库,适用ADOX你也可以操作数据库,增加表等等操作,具体请参考以下文章:
    http://blog.csdn.net/net_lover/archive/2004/06/08/6963.aspx
    http://support.microsoft.com/kb/317881/EN-US/
    http://study.99net.net/study/program/vb/1049955696.html
      

  3.   

    继续请教朋友: 我现在在指定的数据库(由字符串str指定)中添加表,结果出现了下面的错误,请教:
    未处理的“System.Runtime.InteropServices.COMException”类型的异常出现在 AdoTest.exe 中。其他信息: Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.部分代码如下:public bool SaveResult(DataTable dt,string str)
    {
    //新建一数据表添加在指定的数据库中
    ADOX.CatalogClass cat = new ADOX.CatalogClass();
    cat.ActiveConnection ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + str +";"; 
    ADOX.TableClass  newTable=new TableClass (); //此行有黄色提示