Hay dos formas de enfocar el problema de las fotos:
(1) Guardar las fotos dentro de la Base de Datos.
(2) Guardar las fotos fuera de la Base de Datos y en la BD guardar el path.
No hay una solución general, depende de muchos factores el escoger una solución u otra para que se adecue mejor a las posibilidades de tu problema concreto.
Revisa estos 2 hilos y te darán una buena idea de los problemas , ventajas e inconvenientes de cada opción:
*
Usted que haría si...
*
Información y consejos sobre proyecto web
Aunque los títulos parece que no tengan que ver con tu problema, dentro se discute el problema de las fotos.
En cuanto a lo de generar las miniaturas te puedo recomendar
esta entrada en mi página. Podrás encontrar código para generar miniaturas a partir de la imágenes almacenadas.
"
Redimensionar una images; Antialiasing"