40👍
✅
SQLite does not enforce the length of a VARCHAR.
From the SQLite Frequently asked questions:
(9) What is the maximum size of a VARCHAR in SQLite?
SQLite does not enforce the length of a VARCHAR. You can declare a VARCHAR(10) and SQLite will be happy to let you put 500 characters in it. And it will keep all 500 characters intact – it never truncates.
If you update the database using the django admin or model forms, Django will do the length validation for you. In the shell, you could manually call full_clean
before saving, and catch the validation error.
f = Foo(myAction="more than 1 char")
try:
f.full_clean()
f.save()
except ValidationError as e:
# Do something based on the errors contained in e.message_dict.
Source:stackexchange.com