Hi Luke and thanks for the solution.
I'm pretty sure there is a way to set it so that you can fool the DOM into thinking it is new without clearing all of the data elements.
Another approach is to just remove the xdado element from the DOM.
Here's an exercise: create a sample form that queries and submits to a DB table. Previewed and enter some values, click submit. File-Save this form to c:\temp and call it "form1.xml". Next, click New Record and save the XML to your c:\temp folder as "form2.xml". Run windiff on these two files and notice that the difference is the <xdado...> element at the bottom of the xml.
So, all you need to do is add a button that removes that element from your form and the rest of the data will not be affected. I'll leave the removal of that node (simple xpath) as an exercise for you... :)
Cheers!
Related post: http://www.infopathdev.com/forums/p/7091/25890.aspx#25890