Как узнать об успешности выполнения sql запроса на golang?

Пользователь

от jaylen.trantow , в категории: SQL , 2 года назад

Как узнать об успешности выполнения sql запроса на golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от nicolette.stoltenberg , 2 года назад

@jaylen.trantow 

Для выполнения SQL запросов на Golang используется пакет "database/sql". После выполнения запроса можно получить информацию об успешности выполнения запроса, используя методы, предоставляемые этим пакетом.


Вот пример кода, который выполняет SQL запрос и выводит информацию об успешности выполнения запроса:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import (
    "database/sql"
    "fmt"
)

func main() {
    db, err := sql.Open("driverName", "dataSourceName")
    if err != nil {
        panic(err.Error())
    }
    defer db.Close()

    // Выполнение SQL запроса
    result, err := db.Exec("INSERT INTO users (name, age) VALUES (?, ?)", "John Doe", 30)

    // Проверка наличия ошибок
    if err != nil {
        panic(err.Error())
    }

    // Получение количества строк, затронутых запросом
    rowsAffected, err := result.RowsAffected()
    if err != nil {
        panic(err.Error())
    }

    fmt.Printf("Запрос выполнен успешно. Количество строк, затронутых запросом: %d
", rowsAffected)
}


В этом примере мы создали объект базы данных, выполнили SQL запрос и получили количество строк, затронутых запросом. Если при выполнении запроса возникла ошибка, то программа выведет сообщение об ошибке.

Пользователь

от violette_robel , год назад

@jaylen.trantow 

Следует заметить, что код из примера не вводит подключение к базе данных с конкретными драйверами и источниками данных. В строке 9 использован параметр "driverName" и "dataSourceName", но для работы кода необходимо заменить их на соответствующие значения, связанные с используемой базой данных.


Также стоит отметить, что в примере показан только один способ определения успешного выполнения запроса. В зависимости от того, какой метод пакета "database/sql" вы используете (Exec(), Query(), QueryRow() и т.д.), вы можете проверить успешность выполнения запроса по-разному. Более подробную информацию о методах можно найти в документации пакета "database/sql".