"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Consultar una base de datos usando Go

Consultar una base de datos usando Go

Publicado el 2024-08-16
Navegar:154

Query a database Using Go

Paso 1: Instalar el controlador MySQL
Primero, necesitarás instalar un controlador MySQL para Go. Uno popular es go-sql-driver/mysql. Puedes instalarlo usando:

go get -u github.com/go-sql-driver/mysql

Paso 2: Escribe el código Go
A continuación se muestra un ejemplo de cómo puede conectarse a una base de datos MySQL y consultar datos:

package main

import (
    "database/sql"
    "fmt"
    "log"

    _ "github.com/go-sql-driver/mysql"
)

func main() {
    // Open the database connection
    db, err := sql.Open("mysql", "username:password@tcp(127.0.0.1:3306)/dbname")
    if err != nil {
        log.Fatal(err)
    }
    defer db.Close()

    // Ping the database to check if the connection is alive
    if err := db.Ping(); err != nil {
        log.Fatal(err)
    }

    // Define the query
    query := "SELECT id, name FROM users WHERE active = ?"
    active := true

    // Execute the query
    rows, err := db.Query(query, active)
    if err != nil {
        log.Fatal(err)
    }
    defer rows.Close()

    // Iterate through the result set
    for rows.Next() {
        var id int
        var name string
        if err := rows.Scan(&id, &name); err != nil {
            log.Fatal(err)
        }
        fmt.Printf("ID: %d, Name: %s\n", id, name)
    }

    // Check for errors from iterating over rows
    if err := rows.Err(); err != nil {
        log.Fatal(err)
    }
}

Explicación:
Importe los paquetes necesarios: importe el paquete de base de datos/sql para las interacciones con la base de datos y el controlador MySQL (github.com/go-sql-driver/mysql).

Abre la conexión a la base de datos: abres una conexión a la base de datos usando sql.Open. El formato de la cadena de conexión es nombre de usuario:contraseña@tcp(host:puerto)/nombrebd.

Hacer ping a la base de datos: es una buena práctica hacer ping a la base de datos para garantizar que se establezca la conexión.

Ejecutar la consulta: Ejecutas una consulta usando db.Query. El método Query devuelve un objeto *sql.Rows, que puede iterar para obtener el conjunto de resultados.

Recorrer los resultados: utiliza un bucle para recorrer las filas y escanear cada fila en variables.

Manejar errores: debe manejar cualquier error que ocurra durante la ejecución de la consulta o durante la iteración.

Paso 3: ejecuta tu código
Asegúrese de reemplazar el nombre de usuario, la contraseña, 127.0.0.1:3306 y el nombre de base de datos con sus credenciales reales de MySQL y los detalles de la base de datos.

Ejecute su programa Go y debería generar los resultados de su consulta.

Este ejemplo se puede adaptar a otras bases de datos cambiando el controlador y la cadena de conexión en consecuencia.

Declaración de liberación Este artículo se reproduce en: https://dev.to/sukmarizki04/query-a-database-using-go-5f41?1 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3