«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Запрос к базе данных с помощью Go

Запрос к базе данных с помощью Go

Опубликовано 16 августа 2024 г.
Просматривать:122

Query a database Using Go

Шаг 1. Установите драйвер MySQL
Сначала вам нужно установить драйвер MySQL для Go. Популярным является go-sql-driver/mysql. Вы можете установить его, используя:

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

Шаг 2. Напишите код Go
Вот пример того, как вы можете подключиться к базе данных MySQL и запросить данные:

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

Объяснение:
Импортируйте необходимые пакеты: вы импортируете пакет базы данных/sql для взаимодействия с базой данных и драйвер MySQL (github.com/go-sql-driver/mysql).

Открыть соединение с базой данных: вы открываете соединение с базой данных с помощью sql.Open. Формат строки подключения: имя пользователя:пароль@tcp(хост:порт)/имя базы данных.

Проверьте базу данных: рекомендуется выполнить проверку связи с базой данных, чтобы убедиться, что соединение установлено.

Выполнение запроса. Вы выполняете запрос с помощью db.Query. Метод Query возвращает объект *sql.Rows, который можно перебрать, чтобы получить набор результатов.

Перебор результатов: вы используете цикл для перебора строк и сканирования каждой строки в переменные.

Обработка ошибок: вы должны обрабатывать любые ошибки, возникающие во время выполнения запроса или во время итерации.

Шаг 3. Запустите код
Обязательно замените имя пользователя, пароль, 127.0.0.1:3306 и имя базы данных своими фактическими учетными данными MySQL и данными базы данных.

Запустите программу Go, и она должна вывести результаты вашего запроса.

Этот пример можно адаптировать для других баз данных, изменив соответствующим образом драйвер и строку подключения.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/sukmarizki04/query-a-database-using-go-5f41?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить их.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3