0

我需要 SQLAlchemy 来检查数据库表列中是否出现 python-pickled 字符串(例如S'foo'\np0\n.),解开它们(在本例中将 yield foo),然后将它们写回。我该如何(有效地)做到这一点?(我可以以某种方式滥用 SQLAlchemy 的PickleType吗?)

4

1 回答 1

0

好的,找到了一种使用方法sqlalchemy.sql.expression.func.substr

from sqlalchemy.sql.expression import func

table.update().where(
    and_(table.c.column.startswith("S'"),
         table.c.column.endswith("'\np0\n."))
    ).values({table.c.column:
              func.substr(table.c.column,
                          3,
                          func.char_length(table.c.column)-8)
             }).execute()
于 2013-02-03T18:45:49.493 回答