So definieren Sie den zusammengesetzten Primärschlüssel in SQLAlchemy

9

Ich versuche, SQLAlchemy mit MySQL zu verwenden, um eine Tabellenzuordnung für eine Tabelle mit einem zusammengesetzten Primärschlüssel zu erstellen, und ich bin unsicher, ob ich es richtig mache. Die vorhandene Tabelle wird mit dem zusammengesetzten Primärschlüssel definiert.

Hier ist die Definition der Zuordnungsklasse:

%Vor%

Dies entspricht einem bereits in der Datenbank gespeicherten Datensatz     a = table1 ('test', 'test', 'test')

Wenn ich dies zu der Sitzung hinzufüge und die Datensätze in der Tabelle hinzufüge, dann arbeite mit den Daten, bekomme ich einen MySQL Fehler (1062 Duplicate Entry).

%Vor%

Wenn ich mit einer Single-Key-Tabelle arbeite, bekomme ich stattdessen diesen Fehler:

%Vor%

Definiere ich den zusammengesetzten Primärschlüssel falsch? Wenn nicht, was mache ich falsch weiter unten für mich, um den MySQL-Fehler anstelle eines Python / SQLAlchemy-Fehlers zu bekommen?

    
Charlie Carwile 02.10.2013, 02:54
quelle

1 Antwort

2

Ich stimme zu, dass die Frage vage ist. Aber Sie können Folgendes als Richtlinie verwenden. Dies wird aus einer trial1 Tabelle in einer test Datenbank in MySQL ausgewählt. Auskommentierte Teile gibt es als eine alternative Möglichkeit, Primärschlüsseleinschränkungen einzurichten.

%Vor%     
Ali Cirik 06.05.2015 04:26
quelle