Hola JuanK,
muchas gracias por contestar. Efectivamente esa opción sería la correcta. De todas formas me interesaba evitar el usar ficheros, porque lo que quería era guardar en la base de datos la imagen bmp, por lo que al final he utilizado la opción Stream. Eso, junto con código de una página japonesa / china / koreana, me ha servido para resolver el problema.
Por si alguien esta interesado también en la conversión de imágenes JPG a BMP, pongo el código para que no tengan que buscar más, que siempre se agradece:
//Se carga la imagen
TJPEGImage *j = new TJPEGImage;
j->LoadFromFile( OpenPictureDialogo->FileName );
j->DIBNeeded();
//Se redimensiona
Graphics::TBitmap * bm = new Graphics::TBitmap();
bm->Width = DBImagen->Width;
bm->Height = DBImagen->Height;
bm->Canvas->StretchDraw(bm->Canvas->ClipRect,j);
j->Assign(bm);
//Se asigna al campo fotografía de la tabla de la BD
Graphics::TBitmap *b = new Graphics::TBitmap();
TMemoryStream *s = new TMemoryStream;
b->Assign(j);
b->SaveToStream(s);
delete b;
delete j;
MyTablaTrabajador->Edit();
MyTablaTrabajadorfotografia->LoadFromStream(s);
MyTablaTrabajador->Post();
Aquí supongo que quiero mostrar la nueva imagen que cargo de un OpenPictureDialog en un DBimage que tengo en el formulario. Se consigue una redimensión de la imagen para que se vea correctamente, ajustándola a las dimensiones del DBImage. Por último, MyTablaTrabajador es un objeto TMyTable muy similar aTTable, cuyo TableName es una tabla que tengo en mi base de datos que se llama trabajador, y que tiene un campo que se llama fotografía.
Saludos!!!