Letzte Einfügungs-ID in GORM 2.0
In GORM 2.0 hat sich das Abrufen der zuletzt eingefügten ID nach dem Ausführen einer Datenbankeinfügung im Vergleich zu früher geändert Versionen. In diesem Artikel wird erläutert, wie Sie mit der aktuellen Version von GORM die zuletzt eingefügte ID abrufen.
In GORM v2.0 gibt die Begin()-Funktion kein sql.Tx-Objekt mehr zurück, das zuvor die LastInsertId( ) Methode. Stattdessen sollte nach dem Einfügen einer Zeile in die Datenbank die Funktion Last() verwendet werden. Alternativ ist ein effizienterer Ansatz verfügbar.
Nach einer erfolgreichen Datenbankeinfügung mit der Funktion „Erstellen“ füllt GORM automatisch die ID in das an die Funktion übergebene Modell ein. Daher ist der Aufruf von db.Last(&model) nicht erforderlich, da das Modell bereits die zuletzt eingefügte ID enthält. Diese Technik vermeidet nicht nur unnötige Datenbankaufrufe, sondern stellt auch die Datenintegrität sicher.
Um dies zu veranschaulichen, betrachten Sie das folgende Beispiel:
<code class="go">type User struct { gorm.Model Name string } user1 := User{Name: "User One"} _ = db.Transaction(func(tx *gorm.DB) error { tx.Create(&user1) return nil }) // This is unnecessary // db.Last(&user1) fmt.Printf("User one ID: %d\n", user1.ID)</code>
In diesem Beispiel enthält das Modell user1 automatisch das zuletzt eingefügte ID nach Ausführung der Create-Funktion, auf die direkt über user1.ID zugegriffen werden kann. Diese Methode ist effizient und macht zusätzliche Datenbankabfragen oder unnötige Funktionsaufrufe überflüssig.
Das obige ist der detaillierte Inhalt vonWie kann ich die zuletzt eingegebene ID in GORM 2.0 abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!