We talking about 45000 pictures to transfer from MS SQL server (BLOB) to any android device and stored.
Also that problem happening only with 10 to 15 pictures.
the error does not come from jRDC2 but form SQLite, right?
Store the image on disc after you received it from jRDC2. Store just the path where you saved the image to disc on your SQLite-Database.
Usually you store media data to a file and reference it via db entry (=index). Otherwise it's hard to backup your data. So here you would "download" the image and build a reference in the SQlite db.
I would write a small B4J App to do the conversion (save blob to disc and generate the data to store in a SQLite DB). But you also have to download the 45000 Images. I would zip them just to download only one file. Maybe splitted.
It depends on how you handle it. I would crate a flag in the db. Set it to 1 if the image is changed.
Set it to 0 if you already handled it once. So the next run only need to handle 50 (for ex) new Images and not all.