Einfügen von Daten in eine bestimmte Tabelle (sqlalchemy)
Ist es ziemlich einfach, das einfügen von Daten in eine Datenbank durch die Verwendung von sqlalchemy.
address.name = 'Joe'
address.age = 26
session.add(address)
Aber eigentlich habe ich drei Tabellen - wie kann ich die Tabelle angeben, die ich einfügen möchte meine Daten?
Du meinst drei ähnliche Tabellen?
InformationsquelleAutor joko1206100 | 2012-11-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Habe ich das problem gelöst, indem die sql expression language für das hinzufügen der neuen Zeile:
Normalerweise benutze ich die ORM-aber in meinem Fall ist es mehr praktisch.
session.execute(table_addresses.insert().values(name='Joe', age=20))
statt.InformationsquelleAutor joko1206100
Werden Sie wahrscheinlich wollen, schauen Sie sich die sqlalchemy ORM-tutorial.
Erhalten Sie begann, aber ich vermute, Sie gehen zu wollen, um etwas einzurichten, wie die folgenden.
Nun, da es scheint, dass Sie bereits wissen, wie man eine Sitzung, können Sie einfach diesen
Obwohl es möglich ist, dass man wahrscheinlich nur versuchen, es zu tun, on the fly, wäre es wahrscheinlich nicht machen Sie Ihr Leben leichter, denn Sie würden immer noch sagen, welche Objekte beziehen sich auf Ganzzahlen, Zeichenfolgen usw, für die Zuordnung zu der Datenbank-Tabelle.
Wie oben erwähnt könnten Sie
__tablename__ = 'addresses'
geben Sie den Namen der Tabelleaddresses
. Sind Sie stattdessen eher den Umgang mit ein paar identische Tabellen mit unterschiedlichen Namen?Was würde ich wohl empfehlen, wenn Sie verschiedene Tabellen, haben die verschiedenen Klassen zuordnen. Die
__tablename__
wird verwendet, um zu sagen, es die eigentliche Tabelle in der Datenbank übereinstimmen. Zum Beispiel, basierend auf Ihrencontacts
Beispiel, würden Sie wahrscheinlich ersetzen dieclass
Zeile mit so etwas wieclass Contact(Base):
und die__tablename__
Linie mit__tablename__ = 'contacts'
. Werden Sie stattdessen versuchen, Feuer Sie in verschiedenen Tabellen dynamisch on-the-fly?Ja, möchte ich hinzufügen, dass Sie in verschiedenen Tabellen dynamisch
Ich bin nicht in einer Klasse zugeordnet, wenn ich versuche, um die Daten hinzuzufügen.
InformationsquelleAutor Jamie Starke