If you are using a third-party application to upload images and/or files into your database, and SQL Image Viewer cannot identify the image or file type, then there’s a high probability that your application has modified the data.
Examples of such applications include the MAZE School Information System and the Financial Edge system by Blackbaud. We had a user who had the following data stored in their Financial Edge database. In SQL Image Viewer, the following is displayed:
SQL Image Viewer is unable to identify the data that’s stored in the fields (they’re actually PDF files). If we look at the data using the SQL Image Viewer hex viewer:
we can see that the OLE wrapper (or the original source data) begins at offset 32. This means that Financial Edge has added 32 bytes of data to the beginning of the original file, which is why SQL Image Viewer does not recognize the file format.
To identify and extract the data correctly, we need to skip the first 32 bytes, so that we only retrieve the original source file. In SQL Server, we can use the following syntax:
Now, SQL Image Viewer is able to identify the file type correctly.
Ok, admittedly not everybody knows what an OLE wrapper looks like, or any of the other file headers, which is why if SQL Image Viewer cannot identify your blobs, please send us a couple of samples to analyze. We need the data exactly as stored in your database, so to extract the data, please perform the following steps and send us the resulting files.
Select the column containing the unidentified blob data.
Right click the mouse button to bring up the context menu, and select the ‘Save item’ option.
Enter a file name, save the blob data, and send the file to us at firstname.lastname@example.org.
The same issue applies to Access OLE Export and SQL Blob Export too. If these products cannot identify the file type because the original files have an additional header, they will be exported with a .bin extension. Please send us a couple of those .bin files to analyze, or you can also use SQL Image Viewer to retrieve the data and follow the steps above to send us the samples.