Maison >développement back-end >Golang >Comment récupérer l'instance du dernier élément ajouté dans GORM avec un backend MySQL ?

Comment récupérer l'instance du dernier élément ajouté dans GORM avec un backend MySQL ?

Patricia Arquette
Patricia Arquetteoriginal
2024-10-28 02:00:30627parcourir

How to Retrieve the Instance of the Last Added Item in GORM with a MySQL Backend?

Récupération de l'instance du dernier élément ajouté dans GORM avec le backend MySQL

Lorsque vous travaillez avec des opérations de base de données à l'aide de GORM et d'un backend MySQL, vous peut rencontrer des situations dans lesquelles vous devez récupérer l'instance de la ligne la plus récemment ajoutée lors d'une opération de création. Ceci est similaire au concept bien connu de last-insert-id dans les bases de données SQL, qui fournit l'ID de la dernière ligne insérée.

Solution :

Pour Pour récupérer l'instance du dernier élément ajouté dans GORM, vous pouvez utiliser l'approche suivante :

<code class="go">type User struct {
  Id int
  Name string
}

user := User{Name: "jinzhu"}
db.Save(&user)
// user.Id is set to last insert id</code>

Dans cet exemple, nous avons défini une structure User qui représente les données que nous souhaitons insérer. Lorsque la méthode db.Save est appelée avec l'adresse de la structure utilisateur, GORM exécute automatiquement une requête INSERT et récupère le champ Id de la base de données, qui est la clé primaire attribuée par MySQL.

En accédant à l'utilisateur. Id après l'opération db.Save, vous aurez l'ID de la ligne nouvellement insérée, vous permettant de récupérer ou de manipuler davantage l'objet selon vos besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn