如何使用SQLAlchemy定义没有主键的表?
问题描述:
我有一张没有primary key
的表格。我真的不想将这个约束应用到这张表上。如何使用SQLAlchemy定义没有主键的表?
在SQLAlchemy中,我通过定义的表类:
class SomeTable(Base):
__table__ = Table('SomeTable', meta, autoload=True, autoload_with=engine)
当我试图查询这个表,我得到:
ArgumentError: Mapper Mapper|SomeTable|SomeTable could not assemble any primary key columns for mapped table 'SomeTable'.
如何丢失的约束每个表都必须有一个主键?
答
只有一种方法可以绕过SQL Alchemy中的主键约束 - 即将特定的一列或多列作为主键映射到表中,即使它们本身不是主键也是如此。 http://docs.sqlalchemy.org/en/latest/faq/ormconfiguration.html#how-do-i-map-a-table-that-has-no-primary-key。