[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

or

Select id_local, cast (xmp as BLOB)  from Adobe_AdditionalMetadata

Michael.


More information about the Lazarus mailing list