@vGrabko99
html, css, js, php, golang, mysql

Как правильно соединиться с бд?

Привет. Не могу понять как соединиться с бд 1 раз и потом передавать идентификатор соединения в функции.

Вот коннект
db, err := gorm.Open("mysql", "root:parsh888@/generais?charset=utf8&parseTime=True&loc=Local")
	if err != nil {
		log.Fatal(err)
	}
	db.DB()
	db.DB().Ping()
	db.DB().SetMaxIdleConns(10)
	db.DB().SetMaxOpenConns(100)
	db.SingularTable(true)


Если можно элементарный пример. Зарание спасибо.
(сейчас я в каждой функции произвожу новый коннект )
  • Вопрос задан
  • 540 просмотров
Решения вопроса 2
@dev2expert
Если можно элементарный пример.

Объявить глобальную переменную для БД.
Тут в общих чертах описано.
Ответ написан
@vGrabko99 Автор вопроса
html, css, js, php, golang, mysql
Благодаря ответу dev2expert я сделал вот так
var db gorm.DB

func main() {
	router := httprouter.New()
	dbConnect, err := gorm.Open("mysql", "root:parsh888@/generais?charset=utf8&parseTime=True&loc=Local")
	dbConnect.DB()
	dbConnect.DB().Ping()
	dbConnect.DB().SetMaxIdleConns(10)
	dbConnect.DB().SetMaxOpenConns(100)
	dbConnect.SingularTable(true)
	if err != nil {
		log.Fatal(err)
	}
	db = dbConnect

	router.GET("/auth", kontroller.Auth)
	log.Fatal(http.ListenAndServe(":8080", router))
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы