[Gambas-user] Problem with DataControl

T Lee Davidson t.lee.davidson at gmail.com
Thu Dec 21 21:07:32 CET 2017



On 12/21/2017 02:33 PM, Benoît Minisini wrote:
> Le 21/12/2017 à 20:20, T Lee Davidson a écrit :
>>>
>>> TextArea is used when the underlying database field has no limit. Otherwise a TextBox is used.
>>>
>>
>> Thank you for that very useful clarification, Benoît.
>>
>> However, neither one of the relative underlying database fields has no limit.
>>
>> The one given a TextBox control has VARCHAR(200) and the DataControl given the TextArea has VARCHAR(500). Is 500 above a
>> threshold that is considered 'no limit'?
>>
>> I'm just curious about that for future reference, because I think Bjørn can solve his problem by simply raising the limit on the
>> one field.
>>
>>
> 
> It's just in the source code actually... If the limit is greater than 256 characters, or not limited, then a TextArea is used.
> Otherwise a TextBox.
> 
> Regards,
> 

Yes, I could have looked in the source code. But I,more often than not, have difficulty navigating the code as the structure is
confusing to me, and I cannot figure out where to look. So, thank you for that immediate answer, Benoît.

To confirm, raising the field defined with VARCHAR(200) to a VARCHAR(300) solved the issue.

Curiously, and just FYI for anyone needing to modify a column, sqlite3 does not support a Modify Column operation for Alter
Table. I had to dump the database and recreate it (with "ladelogg" the name of the db):

echo '.dump' | sqlite3 ladelogg > ladelogg.dump
# Manually text edit the field definition in the ladelogg.dump file
mv ladelogg ladelogg.bak
cat ladelogg.dump | sqlite3 ladelogg


-- 
Lee


More information about the User mailing list