Es ist durchaus möglich binäre Daten in ein BLOB-Feld einer Datenbank zu speichern. Ich verwende dazu das LabVIEW Database Connectivity Toolset von NI (welches letztendlich auch nur über ADO und den entsprechenden ODBC-Treiber auf die Datenbank zugreift).
Dazu muss eine Parameterized Query mit dem VI "DB Tools Create Parameterized Query.vi" erzeugt werden, der als Parameter die binären Daten in Form eines U8-Arrays übergeben werden (z.B. durch Serialisierung der Daten in einen String und Umwandeln des Strings in das U8-Array). Die Größe der binären Daten ist dabei nicht beschränkt (nur durch die mögliche BLOB-Größe des Datenbanksystems).
Zum Auslesen der BLOB-Daten aus der Datenbank können die normalen SELECT-Befehle verwendet werden. Die erhaltenen Variantdaten müssen dann in umgekehrter Reihenfolge wieder in das Ausgangsdatenformat der Binärdaten umgewandelt werden.
Der Screenshot zeigt beispielhaft das Einfügen und wiederauslesen der Binärdaten (hier eines JPG-Bildes). Bei COL_BLOB handelt es sich dabei um ein BLOB-Feld der Tabelle TESTTABLE der Datenbank.
Diese Vorgehensweise funktioniert auf alle Fälle mit dem Datenbanksystem Firebird 2.0. Ich denke aber, dass auch MySQL und der zugehörige ODBC-Treiber entsprechende Funktionalität besitzen.
Prinzipiell benötigt man nicht unbedingt das Database Connectivity Toolset von National Instruments. Man kann auch direkt auf die entsprechenden ADO-Funktionen (ActiveX-Komponenten) zugreifen. Dazu ist aber detailliertes Wissen zu ADO erforderlich (welches in vorhin genanntem Toolset bereits fertig implementiert ist).