


Apprenez les fonctions de base de données en langage Go et implémentez les opérations de lecture et d'écriture dans le cluster Redis
Apprenez les fonctions de base de données dans le langage Go et implémentez des opérations de lecture et d'écriture dans le cluster Redis
Introduction :
La base de données est un élément indispensable des applications Internet d'aujourd'hui, et le langage Go, en tant que langage de programmation simple et efficace, possède également de bonnes capacités d'exploitation de base de données . Cet article expliquera comment utiliser les fonctions de base de données en langage Go et implémenter les opérations de lecture et d'écriture dans le cluster Redis.
1. Fonctions de base de données en langage Go
Les opérations de base de données en langage Go sont principalement implémentées via le package base de données/sql. Ce package fournit des fonctions de base d'exploitation de base de données, notamment la connexion à la base de données, l'exécution d'instructions SQL, le traitement des jeux de résultats, etc.
-
Connectez-vous à la base de données
En langage Go, nous pouvons nous connecter à la base de données via la fonction Open du package database/sql. Cette fonction accepte deux paramètres : le nom du pilote de la base de données et les informations de connexion de la base de données, par exemple :import "database/sql" import _ "github.com/go-sql-driver/mysql" db, err := sql.Open("mysql", "root:password@tcp(127.0.0.1:3306)/database") if err != nil { log.Fatal(err) } defer db.Close()
Dans le code ci-dessus, nous utilisons le pilote mysql pour nous connecter à la base de données MySQL locale. Le nom d'utilisateur est root, le mot de passe est mot de passe et le nom de la base de données est base de données.
-
Exécuter des instructions SQL
Après la connexion à la base de données, nous pouvons exécuter des instructions SQL via des fonctions telles que db.Exec ou db.Query. La fonction Exec est utilisée pour exécuter des instructions SQL qui ne renvoient pas de jeu de résultats, telles que l'insertion, la mise à jour, la suppression, etc. ; la fonction Query est utilisée pour exécuter des instructions SQL qui renvoient un jeu de résultats, telles que des opérations de requête. Un exemple est le suivant :stmt, err := db.Prepare("INSERT INTO users(email, password) VALUES(?, ?)") if err != nil { log.Fatal(err) } defer stmt.Close() result, err := stmt.Exec("test@example.com", "password123") if err != nil { log.Fatal(err) } lastInsertID, err := result.LastInsertId() if err != nil { log.Fatal(err) } fmt.Println(lastInsertID)
Dans le code ci-dessus, nous utilisons la fonction Prepare pour précompiler une instruction d'insertion et lier les paramètres à ?, puis exécutons l'instruction d'insertion via la fonction Exec, et le résultat de retour est stocké dans le variable de résultat. L'ID d'auto-incrémentation des données insérées peut être obtenu via result.LastInsertId().
-
Traitement des ensembles de résultats
Lors de l'exécution d'une instruction SQL qui renvoie un ensemble de résultats, nous pouvons utiliser la fonction Rows pour obtenir les résultats de la requête. Ensuite, chaque élément de données est traité en parcourant l'ensemble de résultats. L'exemple est le suivant :rows, err := db.Query("SELECT id, email FROM users") if err != nil { log.Fatal(err) } defer rows.Close() for rows.Next() { var id int var email string err := rows.Scan(&id, &email) if err != nil { log.Fatal(err) } fmt.Println(id, email) }
Dans le code ci-dessus, nous avons exécuté une instruction de requête via la fonction db.Query et stocké le résultat dans la variable rows. Parcourez ensuite chaque élément de données via rows.Next et enregistrez les données dans la variable correspondante via rows.Scan.
2. Implémenter les opérations de lecture et d'écriture dans le cluster Redis
Redis est une base de données de stockage clé-valeur hautes performances qui peut être exploitée en langage Go via le package go-redis/redis. Nous utiliserons ensuite ce package pour implémenter les opérations de lecture et d'écriture dans le cluster Redis.
-
Connexion au cluster Redis
En langage Go, on peut se connecter au cluster Redis via la fonction redis.NewClusterClient. Un exemple est le suivant :import "github.com/go-redis/redis/v8" cluster := redis.NewClusterClient(&redis.ClusterOptions{ Addrs: []string{"node1:6379", "node2:6379", "node3:6379"}, }) defer cluster.Close()
Dans le code ci-dessus, nous avons créé un objet redis.ClusterClient et spécifié l'adresse du nœud du cluster Redis via le paramètre ClusterOptions.
-
Écrire des données sur le cluster Redis
Après la connexion au cluster Redis, nous pouvons utiliser la fonction Set pour écrire des données sur le cluster. Un exemple est le suivant :err := cluster.Set(context.Background(), "key", "value", 0).Err() if err != nil { log.Fatal(err) }
Dans le code ci-dessus, nous écrivons un élément de données clé-valeur dans le cluster Redis via la fonction cluster.Set Le délai d'expiration est de 0, ce qui signifie qu'il n'expirera jamais.
-
Lecture des données du cluster Redis
Après la connexion au cluster Redis, nous pouvons utiliser la fonction Get pour lire les données du cluster. Un exemple est le suivant :val, err := cluster.Get(context.Background(), "key").Result() if err != nil { log.Fatal(err) } fmt.Println(val)
Dans le code ci-dessus, nous lisons la valeur correspondant à la clé du cluster Redis via la fonction cluster.Get et l'imprimons.
Résumé :
Cet article présente les fonctions de base de données dans l'apprentissage du langage Go et implémente les opérations de lecture et d'écriture du cluster Redis. Grâce aux fonctions de base de données, nous pouvons facilement nous connecter à la base de données, exécuter des instructions SQL et traiter des ensembles de résultats. Grâce au package go-redis/redis, nous pouvons facilement interagir avec le cluster Redis pour réaliser des opérations de stockage et de lecture efficaces. J'espère que cet article pourra aider les lecteurs à mieux comprendre les fonctions de base de données en langage Go et à les appliquer à des projets réels.
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!

Vous devez vous soucier du package "Strings" dans GO, car il fournit des outils pour gérer les données de texte, l'épissage des chaînes de base à la correspondance avancée de l'expression régulière. 1) Le package "Strings" fournit des opérations de chaîne efficaces, telles que les fonctions de jointure utilisées pour épisser les chaînes pour éviter les problèmes de performances. 2) Il contient des fonctions avancées, telles que la fonction CONTAINSAL, pour vérifier si une chaîne contient un jeu de caractères spécifique. 3) La fonction de remplacement est utilisée pour remplacer les sous-chaînes d'une chaîne, et l'attention doit être accordée à l'ordre de remplacement et à la sensibilité à la casse. 4) La fonction divisée peut diviser les chaînes en fonction du séparateur et est souvent utilisée pour le traitement de l'expression régulière. 5) Les performances doivent être prises en compte lors de l'utilisation, comme

Le "codage / binaire" PackageingOssentialForHandlingBinaryData, offrantoolsforreadingandwritingBinaryDataefficiently.1) itsupportsbothlittle-EndianandBig-EndianByteorders, Crucialforcross-System Compatibilité.2) ThepackageAlworkingwithcus

La maîtrise du package d'octets dans GO peut aider à améliorer l'efficacité et l'élégance de votre code. 1) Le package des octets est crucial pour l'analyse des données binaires, le traitement des protocoles de réseau et la gestion de la mémoire. 2) Utilisez des bytes.buffer pour construire progressivement les tranches d'octets. 3) Le package d'octets fournit les fonctions de recherche, de remplacement et de segmentation des tranches d'octets. 4) Le type de lecteur d'octets convient pour la lecture des données des tranches d'octets, en particulier dans les opérations d'E / S. 5) Le package des octets fonctionne en collaboration avec GO'S GARBAGE Collector, améliorant l'efficacité du traitement des mégadonnées.

Vous pouvez utiliser le package "Strings" dans GO To Manipulat Strings. 1) Utilisez des chaînes.trimspace pour supprimer les caractères de l'espace aux deux extrémités de la chaîne. 2) Utilisez des chaînes.split pour diviser la chaîne en tranches en fonction du délimiteur spécifié. 3) Fermer des tranches de chaîne en une chaîne à travers des chaînes.join. 4) Utilisez des chaînes. Continent pour vérifier si la chaîne contient une sous-chaîne spécifique. 5) Utilisez des chaînes.replaceALL pour effectuer un remplacement global. Faites attention aux performances et aux pièges potentiels lorsque vous l'utilisez.

TheBytespackageingOishlyEffectiveForBytesLemanIpulation, offrant des fonctions de recherche, de fractionnement, de jointure et de bulle

Theencoding/binarypackageinGoisessentialforhandlingbinarydata,offeringfunctionstoreadandwritedatainbothbig-endianandlittle-endianformats.1)It'sidealfornetworkprotocols,enablingserializationanddeserializationofstructureddatalikepacketheadersandpayload

ThesentialFunctionsingo'sBytespackageThatyouneedTokNoware: 1) bytes.indexforsechingwithinbyteslices, 2) bytes.splitforparsing Données, 3) Bytes.JoinforconcatenatingSlices, 4) Bytes.ContainsforcheckingSubslicePresence, et5) Bytes.Replaceallfordatatransformatio

GooffersalterativestothestringspackageforstringManipulation: 1) therexpackageforcomplexpatternmatching, 2) thestrconvpackagefornumericconversions, et3) externallibrarylikestrutilforspecializedoperations.


Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Adaptateur de serveur SAP NetWeaver pour Eclipse
Intégrez Eclipse au serveur d'applications SAP NetWeaver.

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

Version crackée d'EditPlus en chinois
Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

MinGW - GNU minimaliste pour Windows
Ce projet est en cours de migration vers osdn.net/projects/mingw, vous pouvez continuer à nous suivre là-bas. MinGW : un port Windows natif de GNU Compiler Collection (GCC), des bibliothèques d'importation et des fichiers d'en-tête librement distribuables pour la création d'applications Windows natives ; inclut des extensions du runtime MSVC pour prendre en charge la fonctionnalité C99. Tous les logiciels MinGW peuvent fonctionner sur les plates-formes Windows 64 bits.

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP
