Load more data from database.qvd and concatenate it to the table created in step 3.
Store the data into database.qvd
The result of step 2 is that all the previously stored data in database.qvd is lost. So it never contains more records than what you last retrieved from the database. If records are deleted from the database they won't be stored in the qvd file. What you probably want is:
Load data from the database
Load the historical data from database.qvd and concatenate it to table created in step 1.
Store the complete set of current (updated) and historical date into database.qvd