如何定义具有核心的列的示例可以是:
id = Column(Integer, primary_key=True)
在 SQLAlchemy 2.0 中使用 orm 定义同一列的类似方法是:
id: Mapped[int] = mapped_column(primary_key=True)
但是如果我们需要定义一个序列名称怎么办?有了核心,我们就可以:
id = Column(Integer, Sequence('sequence_name'), primary_key=True)
如何在 SQLAlchemy 2.0 中使用 orm 定义序列名称?
mapped_column 中似乎不存在“sequence”属性。
有谁知道如何做或如何在文档中找到它?
非常感谢。
根据我的经验,您通常将
Core's Sequence
功能集成到 ORM 模型定义中,从而允许您为主键或其他自动递增字段指定自定义序列名称。
它看起来像这样:
from sqlalchemy import Column, Integer, Sequence
from sqlalchemy.orm import declarative_base
Base = declarative_base()
class MyModel(Base):
__tablename__ = 'my_model'
id = Column(Integer, Sequence('sequence_name'), primary_key=True)