#############################

 

错误写法:

var DB *sql.DB

func init() {

DB, err := sql.Open("mysql", "tmp:tmp@tcp(10.10.10.10:3306)/mysql")
if err != nil {
return
}
DB.SetMaxOpenConns(3000) // 设置最大连接数
err = DB.Ping() // 尝试与数据库建立连接
if err != nil {
fmt.Println("Failed to connect to mysql,err" + err.Error())
os.Exit(1)
}
}

 

 

解决办法:

= 与 := 的区别

= 就是单纯的赋值

:= 具有声明变量的功能

改前 用的 :=

DB, err := sql.Open("mysql", dsn)

改后 用 =

var err error

DB, err = sql.Open("mysql", dsn)

 

 

 

正确写法:

var DB *sql.DB

func init() {
var err error
DB, err = sql.Open("mysql", "tmp:tmp@tcp(10.10.10.10:3306)/mysql")
if err != nil {
return
}
DB.SetMaxOpenConns(3000) // 设置最大连接数
err = DB.Ping() // 尝试与数据库建立连接
if err != nil {
fmt.Println("Failed to connect to mysql,err" + err.Error())
os.Exit(1)
}
}