2014-02-21 70 views
0

Im将数据从SQL SP(它返回一个表)复制到Access Table中。 即时通讯使用CurrentDb.Execute“INSERT into ...” 它的一切工作正常,但有没有办法只是从记录集中插入所有列到表中?在我输入每个列名的时刻,但我有很多列。 谢谢VBA Access将数据集中的所有列插入访问表

+0

如果表中的列与源中的列的列类型相同并且顺序相同,则应该起作用。最好的测试方法就是试试。 –

+0

阿尔伯特向你展示了如何在[回答你的早期问题]中做到这一点(http://stackoverflow.com/a/21924523/2144390)。 –

回答

0

如果SQL Server表中的列名与Access中的列名相匹配,那么很容易做到。 如果列名不同,但您愿意设计查询并将字段命名,这也很容易。

StrSQL = "Select * from MyTable;" 
rsIN.Open ..... strSQL 
rsOUT.Open .... Table Name 
Do While not rsIN.EOF 
    rsOUT.AddNew 
    for each fld in rsIN.Fields 
     rsOUT.field(fld.name) = rsIN.Field(fld.name) 
    Next fld 
    rsOUT.Update 
    rsIN.MoveNext 
Loop 
rsIN.Close...... etc, etc, 
相关问题