OK, wir haben uns für die benutzerdefinierte SQLAlchemy-Deklaration und nicht für die deklarative entschieden.
Also erstellen wir ein dynamisches Tabellenobjekt wie dieses:
from sqlalchemy import MetaData, Table, Column
def get_table_object(self, md5hash):
metadata = MetaData()
table_name = 'table_' + md5hash
table_object = Table(table_name, metadata,
Column('Column1', DATE, nullable=False),
Column('Column2', DATE, nullable=False)
)
clear_mappers()
mapper(ActualTableObject, table_object)
return ActualTableObject
Dabei ist ActualTableObject die Klassenzuordnung zur Tabelle.