Maison > développement back-end > Golang > le corps du texte

ajout, suppression, modification et requête golang

WBOY
Libérer: 2023-05-15 09:50:06
original
694 Les gens l'ont consulté

Golang est un langage de programmation efficace largement utilisé dans la programmation réseau, la programmation système, le traitement des données et d'autres domaines. Dans Golang, la mise en œuvre des opérations CRUD est une tâche très courante. Cet article expliquera comment utiliser Golang pour implémenter les opérations CRUD.

1. Connexion à la base de données

Dans Golang, les bibliothèques tierces sont généralement utilisées pour se connecter à la base de données. Les plus couramment utilisées sont gorm et sqlx. Cet article utilise gorm comme exemple.

Tout d'abord, vous devez installer la bibliothèque gorm :

go get -u github.com/jinzhu/gorm

Ensuite, introduisez la bibliothèque gorm dans le code :

import (
  "github.com/jinzhu/gorm"
  _ "github.com/jinzhu/gorm/dialects/mysql"
  )
Copier après la connexion

Connectez-vous ensuite à la base de données :

db, err := gorm.Open("mysql", "root:password@tcp(127.0.0.1:3306)/testdb?charset=utf8mb4&parseTime=True&loc=Local")
defer db.Close()
Copier après la connexion

Parmi eux, root représente le nom d'utilisateur, le mot de passe représente le password, tcp (127.0.0.1 : 3306) représente l'adresse IP et le numéro de port de la connexion, et testdb représente le nom de la base de données à connecter. charset représente le jeu de caractères, parseTime indique s'il faut analyser les champs de type heure et loc représente le fuseau horaire.

2. Ajouter des données

gorm propose deux façons d'ajouter des données, à savoir créer et enregistrer, qui peuvent toutes deux être exploitées à l'aide de structures.

// 使用create方式
db.Create(&User{Name: "Alice", Age: 18})

// 使用save方式
user := &User{Name: "Bob", Age: 20}
db.Save(user)
Copier après la connexion

3. Données de requête

gorm fournit une variété d'instructions de requête, telles que Rechercher, Premier, Dernier, Où, etc. Grâce à ces méthodes, la fonction de requête peut être réalisée très facilement.

// 查询全部数据
var users []User
db.Find(&users)

// 查询单条数据
var user User
db.First(&user, "id = ?", 1)

// 条件查询
var users []User
db.Where("age > ?", 18).Find(&users)

// 分页查询
var users []User
db.Where("age > ?", 18).Offset(0).Limit(10).Find(&users)
Copier après la connexion

Parmi eux, Offset indique à partir de quel enregistrement commencer l'interrogation et Limit indique le nombre d'enregistrements à interroger.

4. Mettre à jour les données

gorm propose deux façons de mettre à jour les données, à savoir la sauvegarde et la mise à jour. La différence entre les deux méthodes est que la sauvegarde met à jour la structure entière, tandis que la mise à jour met à jour uniquement les champs spécifiés.

// 使用save方式
user := &User{Name: "Alice", Age: 18}
db.Save(user)

// 使用update方式
db.Model(&User{}).Where("id = ?", 1).Update("name", "Bob")
Copier après la connexion

5. Supprimer des données

gorm fournit la méthode Supprimer pour les opérations de suppression et prend en charge la transmission de structures ou d'expressions conditionnelles.

// 删除指定ID的数据
db.Delete(&User{}, 1)

// 根据条件删除数据
db.Where("age < ?", 18).Delete(&User{})
Copier après la connexion

6. Résumé

L'utilisation de gorm peut facilement implémenter des opérations CRUD dans Golang Grâce à l'introduction de cet article, je pense que les lecteurs peuvent facilement maîtriser l'utilisation de base de gorm. Dans le développement réel, les améliorations et optimisations correspondantes doivent être apportées en fonction des besoins de l'entreprise pour rendre le code plus efficace et plus facile à maintenir.

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