用ado连接sqlserver,把sqlserver根据条件查询出的结果集,存放到客户端的access库中,access数据库中没有表,根据查询结果自动形成表名和内容,如何解决,恳请大虾们,帮忙解决.

解决方案 »

  1.   

    先创建一个oledb connection连接到这个mdb
    oCn.ConnectionString = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=导出.mdb;Jet OLEDB:Database Password=";
    打开oCn并执行建表命令
    oCn.Execute("Create Table 目标表(...)")
    关闭连接
    然后用sqlserver的ado连接执行导出命令
    INSERT INTO OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','Data Source=导出.mdb;Jet OLEDB:Database Password=')...目标表 SELECT * FROM [源表]
      

  2.   

    我想通过一定的条件查询满足条件的记录,然后把查询的结果存放到mdb库中,字段名和字段个数是根据查询结果自动生成的
      

  3.   

    mdb是不可能支持从sql的结果集直接生成表的,两者字段类型并不一致,所以要先根据结果集的字段类型去创建一个表,然后把数据插进去,你可以先将结果集放在一个表里,这样能够取得表的结构,导出后再把表删除
      

  4.   

    我上个月帮客户写过这样的,就是生成一个数据库,生成表和字段,再读SQL数据库插入到MDB中。