英文:
How do I call variable in sql.open function of golang
问题
如何通过变量替换上述代码中调用实际密码的做法。
pwd := "password"
db, err := sql.Open("mysql", "root:"+pwd+"@/events")
if err != nil {
fmt.Printf("Error: Failed to connect events schema. \n")
return
}
defer db.Close()
将密码存储在变量pwd
中,然后在连接字符串中使用该变量来替换实际密码。这样可以避免直接在代码中暴露密码,提高安全性。
英文:
How do I achieve replacing of the practice of calling actual password in above code with a variable.
pwd := "password"
db, err := sql.Open("mysql", "root:pwd@/events")
if err != nil {
fmt.Printf("Error: Failed to connect events schema. \n")
return
}
defer db.Close()
答案1
得分: 3
使用 fmt.Sprintf 替代硬编码的字符串:
pwd := "password"
db, err := sql.Open("mysql", fmt.Sprintf("root:%s@/events", pwd))
文档:
https://golang.org/pkg/fmt/#Sprintf
简单的 GoPlay:
https://play.golang.org/p/TKSvTuD8BY
英文:
Instead of using the hardcoded string, use fmt.Sprintf:
pwd := "password"
db, err := sql.Open("mysql", fmt.Sprintf("root:%s@/events", pwd))
Docs:
https://golang.org/pkg/fmt/#Sprintf
Simple GoPlay:
https://play.golang.org/p/TKSvTuD8BY
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论