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

Exemples détaillés d'opérations de requête de Golang GORM

PHPz
Libérer: 2023-04-03 13:50:18
original
3713 Les gens l'ont consulté

Golang est un langage de programmation relativement nouveau. Sa naissance facilite le développement d'applications Web. La supériorité de Golang réside dans son mécanisme de concurrence et sa syntaxe de langage concise. GORM est une bibliothèque ORM (Object Relational Mapping) dans Golang. Elle est similaire aux ORM dans d'autres langages et peut implémenter des opérations de base de données orientées objet, rendant les ajouts, suppressions, modifications et requêtes de bases de données plus simples et plus clairs. Dans cet article, nous présenterons principalement les opérations de requête de Golang GORM.

1. Introduction

Lors de l'utilisation de Golang GORM pour les opérations de requête, nous devons d'abord importer la bibliothèque GORM, puis définir les informations de base de données correspondantes, par exemple :

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

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

Ici, nous utilisons la base de données mysql et définissons la connexion à la base de données correspondante information. Après avoir importé la bibliothèque GORM, nous devons définir la structure de données correspondante, par exemple :

type User struct {
  ID        int
  Name      string
  Age       int
  Email     string
  CreatedAt time.Time
}
Copier après la connexion

Ici, nous définissons une structure Utilisateur, comprenant des champs tels que ID, Nom, Âge, Email et CreatedAt, où ID est une clé primaire automatiquement incrémentée champ .

2. Méthode de requête

  1. Trouver un seul enregistrement

Dans Golang GORM, nous pouvons utiliser la méthode Find pour interroger un enregistrement, par exemple :

var user User
db.Find(&user, 1) // 查询主键为1的记录
Copier après la connexion

Ici, nous définissons une variable utilisateur et utilisons la méthode Find pour interroger la clé primaire comme 1 enregistrements, les données interrogées seront enregistrées dans la variable utilisateur.

  1. Trouver plusieurs enregistrements

Dans Golang GORM, nous pouvons utiliser la méthode Find pour interroger plusieurs enregistrements, par exemple :

var users []User
db.Find(&users) // 查询所有的记录
Copier après la connexion

Ici, nous définissons une variable de tranche d'utilisateur et utilisons la méthode Find pour interroger tous les enregistrements. Toutes les données interrogées seront enregistrées dans le tableau des utilisateurs.

  1. Requête conditionnelle

Dans Golang GORM, nous pouvons utiliser la méthode Where pour effectuer une requête conditionnelle, par exemple :

var users []User
db.Where("age > ?", 18).Find(&users) // 查询年龄大于18的所有记录
Copier après la connexion

Ici, nous interrogeons tous les enregistrements ayant un âge supérieur à 18 via la méthode Where et les enregistrons dans les utilisateurs. variable de tranche.

  1. Requête floue

Dans Golang GORM, nous pouvons utiliser la méthode Like pour effectuer une requête floue, par exemple :

var users []User
db.Where("name LIKE ?", "%john%").Find(&users) // 查询名字中包含“john”的记录
Copier après la connexion

Ici, nous effectuons une requête floue via la méthode Where, interrogeons les enregistrements contenant "john" dans le nom et enregistrez-les dans la variable slice des utilisateurs.

  1. Requête conditionnelle IN

Dans Golang GORM, nous pouvons utiliser la méthode In pour effectuer une requête conditionnelle IN, par exemple :

var users []User
db.Where("name IN ?", []string{"john", "mary", "bob"}).Find(&users) // 查询名字为john、mary、bob的所有记录
Copier après la connexion

Ici, nous utilisons la méthode Where pour effectuer une requête conditionnelle IN pour interroger tous les noms de John , Mary et Bob Enregistrés et sauvegardés dans la variable slice des utilisateurs.

  1. Requête conditionnelle BETWEEN

Dans Golang GORM, nous pouvons utiliser la méthode Between pour effectuer une requête conditionnelle BETWEEN, par exemple :

var users []User
db.Where("age BETWEEN ? AND ?", 18, 30).Find(&users) // 查询年龄在18到30岁之间的所有记录
Copier après la connexion

Ici, nous utilisons la méthode Where pour effectuer une requête conditionnelle BETWEEN pour interroger les personnes âgées entre 18 et 30 ans Tous les enregistrements sont stockés dans la variable slice des utilisateurs.

3. Résumé

Ce qui précède est la méthode d'opération de requête de Golang GORM. Grâce à l'opération de requête de Golang GORM, nous pouvons facilement implémenter l'opération ORM basée sur Golang, rendant l'ajout, la suppression, la modification et l'interrogation de la base de données plus simples et plus claires. Bien entendu, dans les applications pratiques, nous devons toujours l’appliquer de manière flexible en fonction des besoins spécifiques de l’entreprise.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!