Maison > Article > développement back-end > Comment appeler Golang TiDB
Avant-propos
Avec le développement continu de l'industrie Internet, de nombreux changements ont eu lieu dans les méthodes de traitement des données. Les bases de données relationnelles traditionnelles ne supportent plus les lectures et écritures simultanées élevées de données massives, ainsi que les exigences de haute disponibilité, et sont progressivement remplacées par des bases de données distribuées. TiDB est une base de données NewSQL distribuée fournie par PingCAP. Elle est entièrement compatible avec le protocole MySQL, distribuée, hautement disponible et évolutive. Elle est largement utilisée dans l'Internet, la finance, le commerce électronique et d'autres domaines.
Dans le processus d'utilisation de TiDB, Golang est un langage de programmation couramment utilisé. Il fournit une multitude de bibliothèques tierces et de fonctionnalités de syntaxe concises, lorsqu'il est utilisé conjointement avec TiDB, il peut effectuer des tâches de traitement de données efficaces et fiables. Cet article présente principalement comment appeler TiDB dans Golang pour la référence des développeurs.
Préparation
Avant de commencer à appeler TiDB, vous devez effectuer les préparations suivantes :
1 Installez TiDB
Téléchargez le package binaire de TiDB sur le site officiel et décompressez-le dans un répertoire local.
2. Créer une base de données TiDB
Après avoir démarré TiDB localement, utilisez le client MySQL pour vous connecter à TiDB. Une fois la connexion réussie, utilisez les instructions SQL pour créer une table de test :
CREATE DATABASE test; USE test; CREATE TABLE user ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(20) NOT NULL, age INT(3) NOT NULL, PRIMARY KEY (id) ); INSERT INTO user(name, age) VALUES('Tom', 20);
3. . Installez Golang
Téléchargez le package binaire Golang depuis le site officiel et installez-le conformément à la documentation officielle. Une fois l'installation terminée, définissez les variables d'environnement et testez si l'installation a réussi.
Écrivez le code pour appeler TiDB
Après avoir terminé les préparatifs ci-dessus, vous pouvez ensuite écrire du code Golang pour appeler TiDB pour le traitement des données. Un exemple de code est fourni ci-dessous pour référence aux lecteurs.
package main import ( "fmt" "database/sql" _ "github.com/go-sql-driver/mysql" ) func main() { // 定义连接字符串 connStr := fmt.Sprintf("%s:%s@tcp(%s:%d)/%s?charset=%s", "root", "", "127.0.0.1", 4000, "test", "utf8mb4") // 连接数据库 db, err := sql.Open("mysql", connStr) if err != nil { fmt.Printf("链接数据库失败: %s ", err) return } defer db.Close() // 查询数据 rows, err := db.Query("SELECT * FROM user") if err != nil { fmt.Printf("查询数据失败: %s ", err) return } defer rows.Close() // 循环读取数据 for rows.Next() { var id int var name string var age int err := rows.Scan(&id, &name, &age) if err != nil { fmt.Printf("读取数据失败: %s ", err) continue } fmt.Printf("ID: %d, Name: %s, Age: %d ", id, name, age) } // 处理异常 if err := rows.Err(); err != nil { fmt.Printf("处理异常失败: %s ", err) return } }
En nous référant au code ci-dessus, nous pouvons voir les étapes spécifiques pour appeler TiDB dans Golang :
1 Définir la chaîne de connexion
Avant de nous connecter à TiDB, nous devons d'abord définir la chaîne de connexion. Cela inclut le nom d'utilisateur, le mot de passe, le nom d'hôte, le numéro de port, le nom de la base de données, le jeu de caractères et d'autres informations. Il y a les points suivants à noter à propos de TiDB :
2. Connectez-vous à la base de données
Après avoir défini la chaîne de connexion, vous pouvez utiliser la fonction sql.Open pour vous connecter à la base de données. Cette fonction renvoie un objet sql.DB représentant un pool de connexions à la base de données. Il convient de noter que le pool de connexions ici est automatiquement géré lorsqu'il est utilisé et que les développeurs n'ont pas besoin d'appeler explicitement la méthode Close pour fermer la connexion.
3. Interroger les données
Une fois la connexion réussie, vous pouvez utiliser la fonction db.Query pour exécuter des instructions SQL, en prenant l'interrogation de données comme exemple. Cette fonction renvoie un objet sql.Rows représentant un jeu de résultats de requête. Il convient de noter que le jeu de résultats de la requête est également un pool de connexions et que les développeurs n'ont pas besoin d'appeler explicitement la méthode Close.
4. Boucle pour lire les données
Grâce aux fonctions rows.Next() et rows.Scan() ci-dessus, chaque ligne de données peut être lue dans une boucle et stockée dans une variable. La fonction rows.Next() représente ici s'il existe un prochain enregistrement, et la fonction rows.Scan() représente la lecture de la valeur de colonne de la ligne actuelle.
5. Gestion des exceptions
Dans le processus d'utilisation de TiDB, de nombreuses exceptions peuvent survenir, telles qu'un échec de connexion, une erreur d'instruction de requête, un échec de lecture de données en boucle, etc. Ces exceptions doivent être traitées à temps, sinon elles peuvent provoquer des pannes du système et d'autres problèmes.
Résumé
Cet article présente principalement comment appeler TiDB pour le traitement des données dans Golang. Grâce à l'exemple de code ci-dessus, nous pouvons voir que TiDB peut fournir des services de traitement de données distribués efficaces et fiables, et Golang, en tant que langage de programmation couramment utilisé, peut considérablement améliorer l'efficacité du développement lorsqu'il est utilisé conjointement avec TiDB. J'espère que cet article sera utile à la majorité des développeurs.
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!