我有以下项目结构:
-main.go
-db
--dbinit.go
我dbinit.go有以下代码:
package db
import (
"database/sql"
_ "github.com/go-sql-driver/mysql"
)
var Db *sql.DB
var err error
func init() {
Db, err = sql.Open("mysql", "myDBCreds")
defer Db.Close()
}
我有main.go:
package main
import (
db "./db"
)
func main() {
defer db.Db.Close()
sqlStatement := `INSERT INTO table (field1, field2)
VALUES ($1, $2)
`
_, err := db.Db.Exec(sqlStatement, param1, param2)
if err != nil {
panic(err)
}
但main.go不断抛出错误:
sql:数据库已关闭
我究竟做错了什么?
有只小跳蛙
相关分类