2

私はこのようなモデルを持っています

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 テキストであり、そのサイズは非常に非常に長くなる可能性があります。

ときどきデータが切り捨てられ、エラー MSG は次のようになります。

Warning: Data truncated for column 'all_data' at row 1

切り捨てが発生しないようにするか、回避策が必要です。方法はありますか?この記事を読んでみましたが、どうすればいいのかわかりませんでした。

私はmysqlを使用しています

4

2 に答える 2

3

MySQL では、デフォルトで TEXT 型が使用されていると思います。64K 文字の制限があります。SQLAlchemy は、指定された長さの引数に一致する別の型を選択します。MEDIUMTEXT には 16M という任意の制限があり、LONGTEXT (最大 4G 文字) にはあと 1 バイトしか必要ないため、これらの列には常に LONGTEXT を使用できます (または を使用できますUnicodeText(length=2**31))。

于 2012-06-26T11:10:30.120 に答える
1

私はそれを理解したと思います。unicodeText 引数の長さを指定できます。初心者の質問でごめんなさい

于 2012-06-26T07:15:48.597 に答える