This can be solved using a Custom Post Type and Custom Fields.
Although it can be created manually, a plugin can do it in a breeze.
Using Custom Content Type Manager, I just did this in a couple of minutes:
Well, I did it fast because I’m used to the plugin. It has a bunch of options that can be overwhelming at first, but once they’re understood it’s all very easy. So, it’s better to install it first in a testing environment before applying to the live site.
And it’s very well documented.