si c´est juste des images, t´emmerde pas avec une base de données 
tu stockes ça dans un tableau ! !
tu fais une struct enregistrement :
struct enreg
{
char* data;
. ..
}
puis un tableau de enreg
struct enreg tab[2000];
par exemple...
et pour ta 2e question y´a la réponse dans le struct :
un fichier quel qu´il soit, est une suite d´octets, donc tu fais :
tab[enreg].data = new char[taille_image];
// réserve assez d´octets pour stocker l´image;
FILE* F=fopen("fichier.xxx","rb");
fread(tab[enreg].data,taille_image,1,F);
fclose(F);
et C bon 