国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Maison développement back-end Golang Comment enregistrer les données JSON dans la base de données dans Golang ?

Comment enregistrer les données JSON dans la base de données dans Golang ?

Jun 06, 2024 am 11:24 AM
json golang base de données

Les données JSON peuvent être enregistrées dans une base de données MySQL en utilisant la bibliothèque gjson ou la fonction json.Unmarshal. La bibliothèque gjson fournit des méthodes pratiques pour analyser les champs JSON, et la fonction json.Unmarshal nécessite un pointeur de type cible pour désorganiser les données JSON. Les deux méthodes nécessitent la préparation d'instructions SQL et l'exécution d'opérations d'insertion pour conserver les données dans la base de données.

如何在 Golang 中將 JSON 數(shù)據(jù)保存到數(shù)據(jù)庫中?

Comment enregistrer des données JSON dans une base de données dans Golang

Introduction
Dans Golang, enregistrer des données JSON dans une base de données est une tache courante. Cet article explorera différentes méthodes de persistance des données JSON à l'aide de bases de données couramment utilisées telles que MySQL, et fournira des exemples pratiques à titre de référence.

Utiliser la bibliothèque gjson
La bibliothèque gjson est un package Golang populaire pour analyser et manipuler les données JSON. Il fournit des méthodes simples pour analyser les données JSON dans des structures de données Go telles que des cartes et des tranches.

package main

import (
    "database/sql"
    "encoding/json"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
    "github.com/tidwall/gjson"
)

func main() {
    db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database")
    if err != nil {
        panic(err)
    }
    defer db.Close()

    jsonData := `{
        "name": "John Doe",
        "age": 30,
        "address": {
            "street": "Main Street",
            "city": "New York"
        }
    }`

    values := []interface{}{}

    // 解析 JSON 字段
    name := gjson.Get(jsonData, "name").String()
    age := gjson.Get(jsonData, "age").Int()
    address := gjson.Get(jsonData, "address").String()

    values = append(values, name, age, address)

    // 準備 SQL 語句
    stmt, err := db.Prepare("INSERT INTO users (name, age, address) VALUES (?, ?, ?)")
    if err != nil {
        panic(err)
    }

    // 執(zhí)行插入操作
    _, err = stmt.Exec(values...)
    if err != nil {
        panic(err)
    }

    fmt.Println("JSON data saved to database successfully")
}

Utilisation de json.Unmarshal
La fonction json.Unmarshal fait partie de la bibliothèque standard Golang et est utilisée pour décomposer les données JSON en variables Go. Cette méthode nécessite un pointeur de type cible comme deuxième paramètre.

package main

import (
    "database/sql"
    "encoding/json"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
)

func main() {
    db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database")
    if err != nil {
        panic(err)
    }
    defer db.Close()

    jsonData := `{
        "name": "John Doe",
        "age": 30,
        "address": {
            "street": "Main Street",
            "city": "New York"
        }
    }`

    var user struct {
        Name     string
        Age      int
        Address  string
    }

    err = json.Unmarshal([]byte(jsonData), &user)
    if err != nil {
        panic(err)
    }

    // 準備 SQL 語句
    stmt, err := db.Prepare("INSERT INTO users (name, age, address) VALUES (?, ?, ?)")
    if err != nil {
        panic(err)
    }

    // 執(zhí)行插入操作
    _, err = stmt.Exec(user.Name, user.Age, user.Address)
    if err != nil {
        panic(err)
    }

    fmt.Println("JSON data saved to database successfully")
}

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

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel PHP
1502
276
Stratégies d'intégration des services de Golang à l'infrastructure Python existante Stratégies d'intégration des services de Golang à l'infrastructure Python existante Jul 02, 2025 pm 04:39 PM

TointegrategolangServices withexistingpythoninfrastructure, userestapisorgrpcForInter-Servicecommunication, permettant à la perfection

Comprendre les différences de performances entre Golang et Python pour les API Web Comprendre les différences de performances entre Golang et Python pour les API Web Jul 03, 2025 am 02:40 AM

GolangoffersSuperiorPerformance, nativeConcaunternandViagoroutines, and efficaceResourceUsage, faisant la provision de la trafic, low-lantentencyapis; 2.python, tandis que la locosystème de lavel

Accès à l'objet JSON imbriqué en python Accès à l'objet JSON imbriqué en python Jul 11, 2025 am 02:36 AM

La fa?on d'accéder aux objets JSON imbriqués dans Python est de clarifier d'abord la structure, puis d'indexer la couche par couche. Tout d'abord, confirmez la relation hiérarchique de JSON, comme un dictionnaire ou une liste imbriquée du dictionnaire; Utilisez ensuite les clés du dictionnaire et la liste d'index pour accéder à la couche par couche, telles que les données "détails" ["zip"] pour obtenir le codage zip, les données "Détails" [0] pour obtenir le premier passe-temps; Pour éviter KeyError et IndexError, la valeur par défaut peut être définie par la méthode .get (), ou la fonction d'encapsulation Safe_get peut être utilisée pour obtenir un accès sécurisé; Pour des structures complexes, recherchez ou utilisez des bibliothèques tierces telles que JMESPath pour gérer.

Comment travailler avec les données JSON dans Python? Comment travailler avec les données JSON dans Python? Jul 03, 2025 am 02:11 AM

Le traitement des données JSON est très courant dans Python, en particulier lors de l'interaction avec les demandes de réseau et les API. Voici les opérations communes: 1. Utilisez JSON.loads () pour analyser les cha?nes JSON dans des objets Python (tels que les dictionnaires ou les listes), qui convient au traitement après avoir obtenu des données de l'API; 2. Utilisez JSON.Dumps () pour sérialiser les objets Python en cha?nes JSON, qui convient à l'envoi de données ou à l'enregistrement des fichiers de configuration, et peut optimiser le format de sortie via les paramètres de retrait et d'assurance_ascii; 3. Utilisez JSON.Load () et JSON.Dump () pour lire et écrire des fichiers JSON respectivement, ce qui convient au traitement de la configuration locale ou des données par lots; Faites attention à la charge

Comment convertir la cha?ne JSON en tableau PHP? Comment convertir la cha?ne JSON en tableau PHP? Jul 02, 2025 pm 04:48 PM

Utilisez la fonction JSON_DECODE et définissez le deuxième paramètre sur true pour convertir la cha?ne JSON en tableau PHP; 1. L'utilisation est $ array = json_decode ($ jsonstring, true); 2. Si le deuxième paramètre n'est pas ajouté, l'objet STDClass sera renvoyé; 3. Assurez-vous que la cha?ne d'entrée est valide JSON, sinon elle renverra NULL; 4. Vous pouvez vérifier les erreurs via JSON_LAST_ERROR (); 5. Les erreurs courantes comprennent des problèmes de format tels que des citations non cl?turées, des virgules redondantes, etc.; 6. Après la conversion dans l'exemple, vous pouvez accéder à la valeur correspondante via la touche de tableau; Tant que vous faites attention aux paramètres du format et des paramètres, la conversion peut être terminée en douceur.

Comment sélectionner une autre base de données dans Redis? Comment sélectionner une autre base de données dans Redis? Jul 05, 2025 am 12:16 AM

Toswitchdatabasesinredis, usethesectCommandfollowedbythenumericindex.redissupportsmultiplelogicaldatabases (default16), andachclientConnectionmainSitsOwnSelectedDatabase.1.useselecdinfy (par exemple, select2) toswitchtoanotherdatabase.2.20

Effectuer des migrations de schéma de base de données dans MySQL Effectuer des migrations de schéma de base de données dans MySQL Jul 06, 2025 am 02:51 AM

La migration du schéma de base de données fait référence au processus de modification de la structure de la base de données sans modifier les données, ce qui comprend principalement l'ajout ou la suppression de tables, la modification des types de colonnes ou des contraintes, la création ou la suppression d'index, la modification des valeurs par défaut ou les paramètres nullables, etc. Il est généralement motivé par les mises à jour des applications, par exemple, lorsque les nouvelles fonctionnalités doivent stocker les préférences de l'utilisateur, de nouvelles colonnes sont ajoutées au tableau utilisateur. Contrairement aux migrations de données qui traitent de grandes quantités de mouvements de données, la migration de motifs se concentre sur les changements structurels. Pour effectuer des migrations en mode en toute sécurité, le contr?le de la version doit être utilisé pour suivre les fichiers de structure, les vérifier dans l'environnement de test avant l'environnement de production, diviser la grande migration en petites étapes, éviter plusieurs changements non pertinents en un seul temps et noter que les modifications à de grandes tableaux peuvent provoquer des problèmes de verrouillage de table à long terme. Vous pouvez utiliser des outils tels que Pt-online-Schema-chan.

Travailler avec le type de données JSON dans MySQL Travailler avec le type de données JSON dans MySQL Jul 08, 2025 am 02:57 AM

MySQL prend en charge les types de données JSON introduits depuis la version 5.7 pour gérer les données structurées et semi-structurées. 1. Lorsque vous insérez des données JSON, vous devez utiliser un format juridique. Vous pouvez utiliser des fonctions JSON_Object ou JSON_Array pour construire ou passer dans la cha?ne JSON correcte; 2. Les mises à jour doivent utiliser JSON_SET, JSON_REPLACE, JSON_REMOVE pour modifier certains champs au lieu de l'ensemble du remplacement; 3. Query peut extraire les champs via JSON_CONTAINS, -> Opérateurs, et noter que la valeur de la cha?ne doit être double; 4. Il est recommandé de créer une colonne et un index générées pour améliorer les performances lors de l'utilisation de type JSON.

See all articles