>> I'm not entirely happy with this solution and wondering is there a better way to do this?
There are other solutions also like use COPY command to create or insert new rows from one database to another. You can use cronjob(unix) to schedule copying process automatically at OS level. You can use merge command etc. But the question is what makes you unhappy with your existing procedure?