SQLAlchemy mit mehreren Primärschlüsseln legt keine automatisch fest
Ich hatte einen einfachen Tisch:
class test(Base):
__tablename__ = 'test'
id = Column(Integer, primary_key=True)
title = Column(String)
def __init__(self, title):
self.title = title
Bei Verwendung dieser Tabelle wurde die ID automatisch festgelegt. Ich möchte ein weiteres Feld hinzufügen, das für die Suche einzigartig und effizient ist. Deshalb habe ich das Feld hinzugefügt:
id2 = Column(String, primary_key=True)
Und den Konstruktor aktualisiert:
def __init__(self, id2, title):
self.id2 = id2
self.title = title
Jetzt wird id nicht mehr automatisch gesetzt oder ich bekomme den Fehler:
IntegrityError: (IntegrityError) test.id darf nicht NULL sein u'INSERT INTO test (id2, title) VALUES (?,?) '[U'a', u'b ']
Gibt es eine Möglichkeit, einen zweiten Primärschlüssel zu verwalten, ohne das Autoincrement-Verhalten des ersten zu entfernen?