Skip to content

Instantly share code, notes, and snippets.

@tangx
Last active November 12, 2019 16:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tangx/3b1ee7e3eb197cffa24cf4a3ab26632c to your computer and use it in GitHub Desktop.
Save tangx/3b1ee7e3eb197cffa24cf4a3ab26632c to your computer and use it in GitHub Desktop.
init 初始化
// 全局变量
var db *sql.DB
func init() {
NewConn(dsn)
}
// NewConn return a DB conn
func NewConn(dsn string) (err error) {
// sql.Open 不会
db, err = sql.Open("mysql", dsn)
if err != nil { //检查 dsn 格式是否正确s
log.Println(err)
return err
}
err = db.Ping() // 检查数据库是否连接成功
if err != nil {
log.Println(err)
return err
}
return nil
}
@tangx
Copy link
Author

tangx commented Nov 12, 2019

func Test_NewConn(t *testing.T) {
	// NewConn(dsn)
	QueryRow()
}

init在引入的时候就被调用,因此,当执行 query 的时候,就没有再执行 NewConn 创建连接。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment