I'm working on a number of data collection programs with the intention of selling the data and i'm looking into possible file formats. I use MySQL myself.
One option will be simple CSV files produced with SELECT INTO ... which will mainly be used by people using Excel or other non-database applications such as statistical research applications or neural networks. Each time they download the file they get the latest content produced from my DB by a timed application. (I use Java)
For those using a database an option would be a dumpfile, possibly even replication. But these are MySQL specific. As i don't know what database people use, could be anything, i also want to offer files in a DB neutral format suitable for most ( if not all modern database applications )
What i'm thinking is to design the database as neutral as possible, so not containing any MySQL specific aspects. (stil need to look into this bit)
Then create a script to create the database using ANSI SQL only.
Then produce one .CSV file using SELECT * INTO ... for each table.
( so the content of the .CSV directly matches the table structure )
Would this work on most database applications or would you suggest a different approach ?