here is a probable explanation, from a very fast read, I can't say I agree with everything its said, but the point made looks solid and its marked solved so... try it?
Thanks. Much of that discussion may have been true in 2018, but it seems Lazarus/SQLite3 has moved on and -- not for the better.

Changing the VARCHAR to VARCHAR(32000) (or anything large enough for my use) made no difference. I still got 255.
But, in that discussion the point made that VARCHAR is changed in TEXT internally made me try using TEXT and that worked to retrieve the data. BUT, it has mashed up other stuff as now all displayed fields of that Data show "(MEMO)" instead of actual readable Text.
Changing the visual displayed fields to DBMEMO instead of DBEdit has broken the program in many, many places so I had to back that out.
I also tried the suggestion of the OnGetText mentioned there but I got an error
"Field zPath has an invalid field type (Memo) to base index on" so had to drop that idea too.
Clearly this is an FPC (and/or Laz) thing as the data is saved OK, it just cannot be retrieved into anything
but a MEMO. Strange thinking.