Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Erstellen Ihres Ersten Modells | SQLAlchemy
Datenbanken in Python
course content

Kursinhalt

Datenbanken in Python

Datenbanken in Python

1. Einführung in SQLite
2. CRUD
3. Mehr Über SQLite
4. SQLAlchemy

book
Erstellen Ihres Ersten Modells

In SQLAlchemy besteht das Erstellen eines Modells darin, eine Python-Klasse zu definieren, die einer Tabelle in der Datenbank entspricht. Jede Instanz dieser Klasse repräsentiert eine Zeile in der Tabelle. Lassen Sie uns ein einfaches Beispiel durchgehen, in dem wir ein Comment-Modell zum Speichern von Benutzerkommentaren erstellen.

Dies definiert eine Python-Klasse namens Comment, die eine Tabelle in der Datenbank darstellt. Die Klasse erbt von Base, was es ihr ermöglicht, einer Tabelle in der Datenbank zugeordnet zu werden.

Die Comment-Klasse, die von Base erbt, definiert eine Tabelle in der Datenbank. Dies ermöglicht es, sie mithilfe von Object-Relational Mapping (ORM) einer Datenbanktabelle zuzuordnen.

Das id-Feld dient als Primärschlüssel, der sicherstellt, dass jeder Kommentar einen eindeutigen Bezeichner hat. SQLAlchemy erhöht den Wert automatisch für jeden neuen Datensatz.

Das id-Feld dient als Primärschlüssel, der sicherstellt, dass jeder Kommentar einen eindeutigen Bezeichner hat. SQLAlchemy erhöht den Wert automatisch für jeden neuen Datensatz.

Das created_at-Feld speichert automatisch den Zeitstempel, wann der Kommentar erstellt wurde. Wenn kein Wert angegeben wird, wird er auf die aktuelle Zeit mit datetime.utcnow gesetzt, um sicherzustellen, dass der Zeitstempel in UTC aufgezeichnet wird.

Diese Zeile erstellt alle Tabellen in der Datenbank, die in den Modellen definiert wurden. Sie verwendet die Informationen aus den Metadaten und erstellt die erforderlichen Tabellen über die Verbindung, die durch den Engine bereitgestellt wird. Dies ist nützlich, um Tabellen automatisch zu erstellen, wenn sie noch nicht existieren.

Aufgabe

Swipe to start coding

In dieser Aufgabe erhalten Sie einen Ausgangspunkt zur Definition eines SQLAlchemy-Modells. Ihre Aufgabe ist es, das Modell zu vervollständigen, indem Sie die fehlenden Teile ausfüllen.

  1. Das Attribut __tablename__ gibt den Tabellennamen in der Datenbank an. Ersetzen Sie den Platzhalter durch den korrekten Tabellennamen für das User-Modell.
  2. Die id-Spalte sollte als Primärschlüssel markiert werden. Fügen Sie das richtige Schlüsselwortargument hinzu, um dies anzugeben.
  3. Die username-Spalte sollte eindeutig sein, was bedeutet, dass keine zwei Benutzer denselben Benutzernamen haben können. Füllen Sie das fehlende Schlüsselwortargument aus.
  4. Die is_active-Spalte sollte einen Standardwert von True haben. Fügen Sie das richtige Argument hinzu, um diesen Standardwert festzulegen.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 4
toggle bottom row

book
Erstellen Ihres Ersten Modells

In SQLAlchemy besteht das Erstellen eines Modells darin, eine Python-Klasse zu definieren, die einer Tabelle in der Datenbank entspricht. Jede Instanz dieser Klasse repräsentiert eine Zeile in der Tabelle. Lassen Sie uns ein einfaches Beispiel durchgehen, in dem wir ein Comment-Modell zum Speichern von Benutzerkommentaren erstellen.

Dies definiert eine Python-Klasse namens Comment, die eine Tabelle in der Datenbank darstellt. Die Klasse erbt von Base, was es ihr ermöglicht, einer Tabelle in der Datenbank zugeordnet zu werden.

Die Comment-Klasse, die von Base erbt, definiert eine Tabelle in der Datenbank. Dies ermöglicht es, sie mithilfe von Object-Relational Mapping (ORM) einer Datenbanktabelle zuzuordnen.

Das id-Feld dient als Primärschlüssel, der sicherstellt, dass jeder Kommentar einen eindeutigen Bezeichner hat. SQLAlchemy erhöht den Wert automatisch für jeden neuen Datensatz.

Das id-Feld dient als Primärschlüssel, der sicherstellt, dass jeder Kommentar einen eindeutigen Bezeichner hat. SQLAlchemy erhöht den Wert automatisch für jeden neuen Datensatz.

Das created_at-Feld speichert automatisch den Zeitstempel, wann der Kommentar erstellt wurde. Wenn kein Wert angegeben wird, wird er auf die aktuelle Zeit mit datetime.utcnow gesetzt, um sicherzustellen, dass der Zeitstempel in UTC aufgezeichnet wird.

Diese Zeile erstellt alle Tabellen in der Datenbank, die in den Modellen definiert wurden. Sie verwendet die Informationen aus den Metadaten und erstellt die erforderlichen Tabellen über die Verbindung, die durch den Engine bereitgestellt wird. Dies ist nützlich, um Tabellen automatisch zu erstellen, wenn sie noch nicht existieren.

Aufgabe

Swipe to start coding

In dieser Aufgabe erhalten Sie einen Ausgangspunkt zur Definition eines SQLAlchemy-Modells. Ihre Aufgabe ist es, das Modell zu vervollständigen, indem Sie die fehlenden Teile ausfüllen.

  1. Das Attribut __tablename__ gibt den Tabellennamen in der Datenbank an. Ersetzen Sie den Platzhalter durch den korrekten Tabellennamen für das User-Modell.
  2. Die id-Spalte sollte als Primärschlüssel markiert werden. Fügen Sie das richtige Schlüsselwortargument hinzu, um dies anzugeben.
  3. Die username-Spalte sollte eindeutig sein, was bedeutet, dass keine zwei Benutzer denselben Benutzernamen haben können. Füllen Sie das fehlende Schlüsselwortargument aus.
  4. Die is_active-Spalte sollte einen Standardwert von True haben. Fügen Sie das richtige Argument hinzu, um diesen Standardwert festzulegen.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 4
Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
We're sorry to hear that something went wrong. What happened?
some-alt