There are at least two different approaches to this. One is that you can
programmatically make the changes to the existing database, using either DDL
queries or DAO. (You could use ADOX, but if you're dealing with Access and
JET, frankly you'd be crazy - or just poorly advised!

to do so.) The
other is that you can send out an empty copy of the new database and
programmatically link the tables from the old database, run a series of
append queries to append the data from the old tables into the new tables,
and finally delete the links to the old tables.
There should be no need to 're-establish the relationships', as you will not
break them in the first place. You just have to be careful to append the
data in the correct order. If referential integrity rules specify that a
field in table A must match a field in table B, you need to append the data
to table B before you append to table A.
It's difficult to be much more detailed than that, because the details, of
course, differ from one database to the next.