Как преобразовать тип *sql.rows в int на golang?

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

от fred , в категории: Golang , 5 месяцев назад

Как преобразовать тип *sql.rows в int на golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

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

от hermina.hauck , 5 месяцев назад

@fred 

Чтобы преобразовать тип *sql.Rows в int на Golang, вам необходимо сначала извлечь значение из результата запроса и затем привести его к типу int.


Пример кода:

 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
var count int

// Выполните запрос к базе данных и получите *sql.Rows
rows, err := db.Query("SELECT COUNT(*) FROM table")
if err != nil {
    // Обработайте ошибку
}

defer rows.Close()

// Извлеките значение из результата запроса
for rows.Next() {
    err := rows.Scan(&count)
    if err != nil {
        // Обработайте ошибку
    }
}

// Проверьте наличие ошибок после выполнения запроса
err = rows.Err()
if err != nil {
    // Обработайте ошибку
}

// count теперь имеет тип int
fmt.Println(count)


В этом примере мы выполняем запрос "SELECT COUNT(*) FROM table" и сканируем значение результата запроса в переменную count. Затем мы можем использовать count как int.