如何使用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