我在我的Web API應用程序中有一組函數。他們對Postgres數據庫中的數據執行一些操作。如何在Go應用程序中處理打開/關閉Db連接?
func CreateUser() {
db, err := sql.Open("postgres", "user=postgres password=password dbname=api_dev sslmode=disable")
// Do some db operations here
}
我想功能應該與DB彼此獨立地工作,所以現在我有sql.Open(...)
每個函數內。我不知道這是否是管理數據庫連接的正確方法。
我應該在應用程序啓動時將其打開,並將db作爲參數傳遞給相應的函數,而不是在每個函數中打開連接?
'這是很少需要關閉DB.'所以它並沒有被關閉?並隨時打開連接? –
@GujaratSantana是的,強烈建議不要一直關閉和重新打開數據庫連接。如果數據庫更改(例如數據庫名稱,主機或認證信息更改),則只需關閉數據庫連接。或者當你的應用程序退出。 – icza