Python — Какова цель определения максимальной длины строки в модели SQLAlchemy?

#python #sqlite #sqlalchemy

#python #sqlite #sqlalchemy

Вопрос:

Просто любопытно, потому что, похоже, это не останавливает сохранение более длинной строки в БД, как я ожидал.

Зачем вообще определять это, если это не имеет значения? (это должно что-то делать!)

 class Message(db.Model):
    id = db.Column(db.Integer, primary_key = True)
    tag = db.Column(db.String(12))
    description = db.Column(db.String(120))
    copy = db.Column(db.String)
    voice = db.Column(db.String(24))
  

Комментарии:

1. Вероятно, вы используете SQLite, который не применяет длины столбцов. Другие базы данных (например, MySQL и PostgreSQL) делают это принудительным.

2. @DanielRoseman Вероятно, вам следует указать это в качестве ответа, поскольку это правильный ответ.

3. @DanielRoseman Да, SQLite. Похоже, это отвечает на мой вопрос. Что произойдет, если я использую базу данных, которая применяет это, и фиксируется строка большего размера, чем выделенная?

Ответ №1:

Как и предложил Дэниел, я использую SQLite, который не применяет длины столбцов.

Спасибо, Дэниел!

Комментарии:

1. Да, я виноват: (По какой-то причине я подумал, что это Дэниел сказал мне сделать это >< Если вы ответите Дэниелу, я с радостью приму ваш!