Maison > développement back-end > Golang > Comment utiliser GORM pour la persistance des données (framework ORM du langage Go)

Comment utiliser GORM pour la persistance des données (framework ORM du langage Go)

WBOY
Libérer: 2023-06-17 23:19:07
original
1810 Les gens l'ont consulté

En tant que langage de programmation en développement rapide, le langage Go nécessite la persistance des données pendant le processus de développement. Afin de réaliser cette opération, le langage Go peut utiliser le framework ORM.

GORM est un framework ORM basé sur le langage Go. Il peut mapper la structure de données du langage Go à la base de données via une simple API pour réaliser des opérations de persistance.

Dans cet article, nous présenterons comment utiliser GORM pour la persistance des données, y compris la connexion à la base de données, la définition du modèle, le fonctionnement des données, etc.

  1. Connexion à la base de données

Avant d'utiliser GORM pour la persistance des données, vous devez d'abord vous connecter à la base de données. Dans GORM, diverses bases de données sont prises en charge, notamment MySQL, PostgreSQL, SQLite, etc.

Lors de la connexion à la base de données MySQL, vous pouvez utiliser le code suivant :

import (
    "gorm.io/gorm"
    "gorm.io/driver/mysql"
)

func main() {
    dsn := "username:password@tcp(127.0.0.1:3306)/database_name?charset=utf8mb4&parseTime=True&loc=Local"
    db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
    if err != nil {
        panic(err)
    }
    defer db.Close()

    // 进行其他数据操作
}
Copier après la connexion

Dans le code ci-dessus, dsn est les informations de connexion de la base de données MySQL. Le nom d'utilisateur, le mot de passe, le nom de la base de données et d'autres informations doivent être renseignés dans dsn.

  1. Définition du modèle

Dans GORM, les structures du langage Go sont utilisées pour créer des modèles, et chaque structure représente une table de base de données.

Par exemple, si nous créons une table utilisateur, nous pouvons définir la structure suivante :

type User struct {
    gorm.Model
    Name string
    Age  int
}
Copier après la connexion

Parmi eux, gorm.Model est un modèle de base fourni par GORM, comprenant id, create_at, update_at, delete_at et d'autres champs.

  1. Opération sur les données

Dans GORM, utilisez des variables de base de données pour les opérations sur les données. La variable db représente une connexion à une base de données et peut effectuer diverses opérations, notamment la création, la mise à jour, la suppression, la requête, etc.

Voici quelques exemples de codes :

(1) Créer des données

user := User{Name: "张三", Age: 18}

result := db.Create(&user)

fmt.Println(result.RowsAffected) // 1
Copier après la connexion

(2) Mettre à jour les données

db.Model(&user).Update("name", "李四")
Copier après la connexion

(3) Interroger les données

db.First(&user, 1)
Copier après la connexion

(4) Supprimer les données

db.Delete(&user, 1)
Copier après la connexion
  1. Conclusion

Ce qui précède est utilisé, GORM effectue des opérations de base de persistance des données et peut effectuer des opérations telles que l'ajout, la suppression, la modification et l'interrogation de données via une simple API.

Bien sûr, GORM prend également en charge des opérations plus avancées, telles que les transactions, les requêtes en chaîne, etc. Pour plus d'utilisation de GORM, veuillez vous référer à la documentation officielle.

Lors de l'exécution d'opérations de persistance des données, en plus de GORM, le langage Go dispose également d'autres frameworks ORM open source, tels que xorm, beego, etc. Choisissez simplement le cadre qui vous convient en fonction de vos besoins personnels.

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!

Étiquettes associées:
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