Hi guys,
I'm a professional photographer with a bit of programming experience. I know a lot about object-oriented programming from scripting languages (PHP, ASP, JavaScript), but not too much about C++. Here's what I need to do.

I have a large file of photographs, numbering in the thousands. The rest of my workflow is digital on a Windows XP platform, so I'd like to integrate that with a digital database, rather than the traditional file cabinet system. First, I need to assemble a database with an entry for each photo (with information about location, category, exposure, etc.). Second, I'd like to write a small program to manage this database; it should be able to add new entries, delete old ones, categorize the data by various characteristics, etc. Pretty basic stuff right now. Rather than simply use packaged database software and manage my data from there, I'm choosing the approach of intermediate software because in the future I'll add features like automatic invoices for photos sent to publishers, e-mail notifications, searches, etc.

I have Visual C++ 6.0, and I know the basics of putting together simple SDI and dialog-based apps. I know very little about how objects, classes, etc. interact with each other, and I know absolutely nothing about interfacing with databases from C++. I might be able to hack something with Visual Basic, but I'd prefer to do it the right way with solid C++ code.

So first and foremost, I need some sort of database software; preferably free, because I don't have a lot of cash. I might be able to get ahold of Microsoft Access, if necessary. I do have Excel... would a spreadsheet work? If not, I need some sort of freeware or open-source software to work with (I used MySQL for my web-based work... any chance of applying that to this situation?)

Next, can anybody help walk me through the steps of connecting whatever database system I choose to use to a Windows application? I know nothing about exchanging data between the database and the application. ODBC maybe? Microsoft's documentation is, of course, totally cryptic for somebody who doesn't already know how to do it.

I really appreciate your help. As soon as I get the project working, I'll let you all know how it goes. Thanks!