I have a visual basic application that has about 5 or 6 forms and each form is associated with the same database. The problem is that on each load of the form the current code does a .dataset.merge with the current database against the database downloaded from the server. The onboard database is only about 1kb in size but on each 'merge' the memory seems to decrease by almost 1mb. If I comment out the 'merge' and only load the form hardly any memory is used. These forms are pre-loaded at start up so the memory is held up to a point where when the last page is loaded the application crashes, at different times/points. My question is it normal for a 'merge' to eat up so much memory? Is there a more elegant way of doing a merge maybe so that I don't have to do it for each form but only once and all the forms have access to same and only one merge?