Don't know what OS you use for certain, though your username might be giving that away...
On Windows, I would likely use Access because I am very familiar with it. But I also have MS Office Pro and it comes with it. On the Mac or Windows and if you have to purchase something anyway, you could check out fileMaker. It's a $300+ bite, now that I look.
Really, any database application (free or paid) that can export XML (ideally) or a CSV (post-export clean-up and really should be then converted to XML) would work. Heck, OpenOffice's spreadhseet or database application would work as well (OpenOffice is an OpenSource, free application). With a straight CSV export, your database probably will have paragraph returns. This breaks ID's CSV import. So in the exported CSV you would need to search and replace all the paragraph returns (searching for two consequetive returns) and replace them with any character that is not used in you database, like a tilde character or another one. Then once the merge happens in ID, you would search for that character, delete it in the Replace dialog with a return.
Another option is to simply write a PHP or ASP page to interface with an SQL database (or an Access dB). Or, a WordPress installation come to think of it. Then you would enter data via a browser. You would then pull the data off your server in either straight XML or a CSV. There is an experiemental plug-in for WordPress to export stories/entries out as XML. Don't know how well it works and I don't think it was ever perfectly finished off. But the SQL data is reasonably easy to grab as CSV and using PHP can be gotten out of the dB as XML.
But if you want a real strong database application, either Access or FileMaker is what I would recommend.