Maison >développement back-end >Golang >instruction de suppression golang

instruction de suppression golang

PHPz
PHPzoriginal
2023-05-16 14:36:37658parcourir

Golang est un langage compilé fortement typé présentant les avantages d'efficacité, de simplicité et d'évolutivité, et est devenu l'un des langages de programmation les plus populaires à l'heure actuelle. Dans la programmation quotidienne dans Golang, nous rencontrons souvent des situations où les données doivent être supprimées. Alors, comment écrire une instruction de suppression dans Golang ? Cet article vous donnera une introduction détaillée sur la façon d'écrire l'instruction de suppression de Golang.

1. Concepts de base

Dans Golang, l'opération de suppression correspond à l'instruction DELETE dans l'opération de base de données, et sa fonction est de supprimer les données spécifiées de la table de données. Bien entendu, lors d'une opération de suppression, nous devons d'abord clarifier les concepts suivants :

  1. Table de données : L'opération de suppression cible les données de la table de données, la table de données à exploiter doit donc d'abord être déterminée.
  2. Clause WHERE : Cette clause est utilisée pour spécifier les données à supprimer. Elle doit généralement fournir une sorte de conditions de recherche pour trouver les données spécifiées à supprimer.

2. Syntaxe de base de l'instruction de suppression

Dans Golang, la syntaxe de base de l'opération de suppression est la suivante :

DELETE FROM `table_name` WHERE `condition`;

Parmi eux, DELETE est le mot-clé, indiquant qu'il faut effectuer l'opération de suppression FROM est suivi du nom de ; la table de données à supprimer ; WHERE est suivi de conditions de suppression qui spécifient les données à supprimer.

Par exemple, si nous voulons supprimer toutes les données utilisateur de moins de 20 ans d'une table de données nommée utilisateurs, nous pouvons écrire l'instruction de suppression suivante :

DELETE FROM users WHERE age < 20;

3. Exécutez l'instruction de suppression dans Golang

Dans Golang, vous besoin d'exécuter L'opération de suppression nécessite l'utilisation de la bibliothèque standard base de données/sql et du pilote de base de données correspondant. Ici, nous prenons la base de données SQLite comme exemple pour présenter comment effectuer une opération de suppression.

  1. Importez les bibliothèques nécessaires

Avant d'écrire l'instruction de suppression Golang, vous devez importer certaines bibliothèques nécessaires, comme indiqué ci-dessous :

import (
    "database/sql"
    "fmt"
    _ "github.com/mattn/go-sqlite3"
)

Parmi eux, le package database/sql est utilisé pour relations dans Golang Il s'agit d'une bibliothèque standard pour les opérations de base de données et github.com/mattn/go-sqlite3 est une bibliothèque de pilotes pour la connexion à la base de données SQLite. database/sql包是Golang中用于关系型数据库操作的标准库,而github.com/mattn/go-sqlite3是用于连接Sqlite数据库的驱动库。

  1. 连接数据库

在执行删除语句之前,需要先连接到数据库。连接数据库的代码如下:

db, err := sql.Open("sqlite3", "./test.db")
if err != nil {
    fmt.Println(err)
    return
}
defer db.Close()

这里,将打开一个名为test.db的Sqlite数据库,连接信息存储在db变量中。使用defer语句关闭连接,以确保程序执行结束时数据库连接能够正常关闭。

  1. 编写删除语句

接下来,根据上述语法示例,编写一个删除数据表中数据的SQL语句:

sqlStr := "DELETE FROM users WHERE age < ?"

其中,users是要删除数据的数据表名称,age < ?表示删除age小于所提供的参数值的数据。

  1. 执行删除操作

执行删除操作的代码如下:

stmt, err := db.Prepare(sqlStr)
if err != nil {
    fmt.Println(err)
    return
}
defer stmt.Close()

result, err := stmt.Exec(20)
if err != nil {
    fmt.Println(err)
    return
}

rowsAffected, err := result.RowsAffected()
if err != nil {
    fmt.Println(err)
    return
}

fmt.Printf("删除了%d条数据
", rowsAffected)

在上述代码中,使用db.Prepare()函数编译SQL语句,创建一个stmt对象。使用stmt对象的Exec方法执行SQL语句,将参数传递给SQL WHERE子句中的占位符。此外,使用result.RowsAffected()

    Connectez-vous à la base de données

    Avant d'exécuter l'instruction delete, vous devez d'abord vous connecter à la base de données. Le code pour se connecter à la base de données est le suivant :

    rrreee

    Ici, une base de données SQLite nommée test.db sera ouverte et les informations de connexion sont stockées dans la variable db. Utilisez l'instruction defer pour fermer la connexion afin de garantir que la connexion à la base de données peut être fermée normalement à la fin de l'exécution du programme.

      🎜Écrivez une instruction de suppression🎜🎜🎜Ensuite, selon l'exemple de syntaxe ci-dessus, écrivez une instruction SQL pour supprimer les données de la table de données : 🎜rrreee🎜Où, utilisateurs est le Le nom de la table de données pour supprimer les données. age < ? signifie supprimer les données dont l'âge est inférieur à la valeur du paramètre fourni. 🎜
        🎜Effectuer une opération de suppression🎜🎜🎜Le code pour effectuer l'opération de suppression est le suivant :🎜rrreee🎜Dans le code ci-dessus, utilisez la fonction db.Prepare() pour compilez l'instruction SQL et créez un objet stmt. Utilisez la méthode Exec de l'objet stmt pour exécuter l'instruction SQL, en transmettant les paramètres aux espaces réservés dans la clause SQL WHERE. De plus, utilisez la méthode result.RowsAffected() pour obtenir le nombre de lignes affectées par la suppression et l'afficher. 🎜🎜À ce stade, l'introduction à la façon d'écrire des instructions de suppression dans Golang est terminée. 🎜🎜Résumé🎜🎜Cet article présente principalement comment écrire des instructions de suppression dans Golang, y compris les concepts de base, la syntaxe de base et les étapes spécifiques pour effectuer des opérations de suppression. Je pense qu'après avoir lu cet article, tout le monde comprendra mieux les instructions de suppression de Golang. Bien entendu, en plus de la base de données SQLite, Golang prend également en charge MySQL, PostgreSQL et d'autres bases de données grand public. Vous pouvez choisir en fonction de vos besoins en développement réel. 🎜

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:
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
Article précédent:Pourquoi utiliser GolangArticle suivant:Pourquoi utiliser Golang