Maison > développement back-end > Golang > Comment récupérer le dernier ID d'insertion dans GORM v2.0 ?

Comment récupérer le dernier ID d'insertion dans GORM v2.0 ?

DDD
Libérer: 2024-10-30 06:24:03
original
247 Les gens l'ont consulté

How to retrieve the last insert ID in GORM v2.0?

GORM 2.0 : Récupération de l'ID du dernier insert

Lors de l'utilisation de GORM v2.0 pour insérer des données dans une base de données MySQL, la méthode LastInsertId() n'est plus disponible via la méthode Begin(). Au lieu de cela, il existe deux options pour récupérer le dernier ID d'insertion :

Option 1 : utilisez la fonction db.Last()

Après avoir inséré une ligne dans la base de données, appelez la fonction db.Last() et transmettez-lui un pointeur vers le modèle. Le modèle sera renseigné avec les valeurs insérées, y compris le dernier ID d'insertion.

Exemple :

<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
})

db.Last(&user1)

fmt.Printf("User one ID: %d\n", user1.ID)</code>
Copier après la connexion

Option 2 : accéder directement à l'ID

L'ID est également renseigné dans le modèle que vous transmettez à la fonction Créer. Vous pouvez y accéder directement sans utiliser db.Last().

Exemple :

<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
})

fmt.Printf("User one ID: %d\n", user1.ID)</code>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal