You aren't a pain, no worries...
1) If you are used to standard queries, you cna use a product by Inthehand
that's an ADOCE wrapper. While I have not used it personally, I know many
that have and the reviews are universally that the product is excellent and
the guy that wrote it is very visible and well respected in the CF world.
2) You can also use SQL Server CE which is a great solution. If you search
on SQL Server CE there are a few good example out there, but Rob Tiffany
just came out with a new book on the subject...I just wrote a review on it
here
http://www.devbuzz.com/content/books.asp and it's available at a 30%
discount.
3) If you want to use XML here's a basic strategy. The whole goal is to use
Data in a DataSet and the dataset doesn't care where it comes from (the
data). It can come from SQL Server, CE, a text file, an XML file etc. So,
on the desktop, you fire a query and build a dataset that has all the data
you need. Then, use DataSet.WriteXML("SomePath");
Then, copy via your method of choice the XML file to the PDA.
Once it's there, you declare a new dataset and call the ReadXML ie
myDataSet.ReadXML(@"\Storage Card\myData.xml");
Now that data is available on the PDA. I'd recommend making the dataset a
public property so you can acccess it throughout. you can add all you want
to it and then when you are done, write the new XML back to the storage
card, sync the file back to the desktop and use it to update your database.
It sounds much more complicated than it is.
You can also use the tables of the Dataset to create other objects like
Dataviews to facilitate searching and filtering....
HTH,
Bill