Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Lesen mehrerer Werte aus einem Blob-Feld PL/SQL

Abgesehen von dem offensichtlichen Rat, jede Datei einfach als separates BLOB zu speichern ...

Mir scheint, Sie haben zwei Möglichkeiten. Speichern Sie entweder die Länge jeder Datei irgendwo und verwenden Sie diese, um die Datenmenge zu steuern, die Sie aus dem BLOB lesen. oder setzen Sie einen Trennzeichenwert in das BLOB zwischen den Dateien. Das Trennzeichen scheint mir eine schlechtere Wahl zu sein - Sie müssen einen Wert auswählen, der garantiert nicht in den Dateidaten vorhanden ist, und Sie müssen einzelne Bytes lesen, um das Trennzeichen zu finden.

Also die Längen speichern. Und wahrscheinlich die Dateinamen. Was eine untergeordnete Tabelle mit einer Zeile pro Datei impliziert. Das bringt uns zurück zu der Frage – warum nicht einfach ein BLOB in jeder dieser Zeilen speichern, eines pro Datei?