[Lazarus] Help reading SQLite field with more than 255 chars

Michael Van Canneyt michael at freepascal.org
Tue Nov 19 09:27:23 CET 2013

On Mon, 18 Nov 2013, mulcamd wrote:

> I’m reading the SQLite database of Adobe Lightroom (SQLite).
> I want to process the AdditionalMetadata table, see below, the XMP field, which may be 3000 chars long.
> When retrieving the contents of this field I only get 255.

I cannot create the table with the SQL you posted.
I get a 
Error: duplicate column name: 
from sqlite.

Meanwhile you can try the following:

First of all, make sure you are using an ansistring variable instead of a shortstring variable.
If that is OK, and you still get only 255, try using a cast expression:

Select id_local, cast (xmp as text)  from Adobe_AdditionalMetadata


Select id_local, cast (xmp as BLOB)  from Adobe_AdditionalMetadata


More information about the Lazarus mailing list