@linnea
Чтобы узнать об успешности выполнения SQL-запроса на Golang, можно использовать стандартный пакет database/sql
. Этот пакет содержит метод Exec
, который выполняет заданный SQL-запрос и возвращает результат в виде объекта типа sql.Result
.
Метод Exec
возвращает ошибку типа error
, которая содержит информацию об успешности выполнения запроса. Если запрос выполнен успешно, то ошибка будет равна nil
. Если же запрос выполнен не успешно, то ошибка будет содержать сообщение об ошибке.
Пример кода:
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 |
import ( "database/sql" "fmt" ) func main() { // Открываем соединение с базой данных db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/database") if err != nil { panic(err.Error()) } defer db.Close() // Выполняем SQL-запрос result, err := db.Exec("INSERT INTO users (name, age) VALUES (?, ?)", "John", 30) if err != nil { panic(err.Error()) } // Проверяем успешность выполнения запроса rowsAffected, err := result.RowsAffected() if err != nil { panic(err.Error()) } fmt.Printf("Запрос выполнен успешно. Количество строк, затронутых запросом: %d ", rowsAffected) } |
В данном примере мы выполняем SQL-запрос на вставку новой записи в таблицу users
. Затем мы проверяем успешность выполнения запроса, используя метод RowsAffected
, который возвращает количество строк, затронутых запросом. Если значение этого метода больше нуля, то запрос выполнен успешно.