我有这样的模型
class mymodel(Base):
"""
Unprocessed DataSource model
"""
__tablename__ = 'mymodel_data'
mod_id = Column(Integer, primary_key=True)
mod_name = Column(Unicode(150))
user_id = Column(Integer, ForeignKey('users.user_id'))
all_data = Column(UnicodeText)
all_data
是一个很长的json文本,它的大小可能非常长。
有时数据会被截断,而我得到的错误是
Warning: Data truncated for column 'all_data' at row 1
我需要确保截断没有发生,或者我需要一个解决方法。有办法吗?我试着阅读this article,但我无法弄清楚要做什么。
我正在使用mysql
答案 0 :(得分:3)
我想在MySQL上,默认使用TEXT类型。它有64K字符的限制。 SQLAlchemy将选择一个不同的类型来匹配给定的长度参数。由于MEDIUMTEXT具有16M的任意限制,而LONGTEXT(最多4G字符)仅需要1个字节,因此您可以始终对这些列使用LONGTEXT(或使用UnicodeText(length=2**31)
)。
答案 1 :(得分:1)