I'm in the process of developing a Point of sale solution for independent retailers.
This is, in essence, an integrated solution that has two elements: one or more tills and one backoffice system
The backoffice portion of the software is being written in C++/MFC for Windows. Through this interface, the user adds products to the system and is given reports on sales and so forth.
The till(s) run Linux and Qtopia.
I'm trying to decide what database server I should use. So far, I've looked at MySQL, PostgresQL and firebird. They all seem to have there pros and cons. MySQL has a nice C++ API called MySQL++, but I'll have to spend a few hundred dollars on a commercial licence for each unit. Postgresql has the advantage of being free as in beer, and of having a BSD licence that won't force me to adopt the GPL, which I'd rather avoid doing, but it doesn't have great windows support and the API seems very complicated to me. Firebird doesn't seem very popular, which is probably indicative of its quality.