If you want a “clean” SQL solution, my suggestion would be to connect from your SQL server to the Access database using OPENDATASOURCE .
You can then write your INSERT statements using T-SQL. It will look like this:
INSERT INTO OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','Data Source=myDatabaseName.mdb')...[myTableName] (insert instructions here)
The complexity of your INSERT will depend on the differences between SQL and ACCESS databases. If tables and fields have the same name, it will be very simple. If the models are different from each other, you may have to create certain queries in order to “format” your data before inserting them into your MS-Access tables and fields. But even if it gets complicated, it can be looked at using pure SQL.
source share