我正在尝试使用 golang 连接到我在本地拥有的 mysql 数据库,它构建得很好,但运行它时出现以下错误:
panic: sql: expected 0 arguments, got 1
我的连接是这样的:
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func DBConn() {
team := "software"
db, err := sql.Open("mysql", "root:12345678@tcp(localhost:3306)/flexlocal")
if err != nil {
fmt.Println("this is where it all went wrong")
fmt.Printf(err.Error())
panic(err)
}
}
根据我的研究,这就是它的工作原理,但它对我不起作用。
最佳答案
请尝试使用dbconn函数连接go中的mysql
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func dbConn(setDatbaseInstance string) (db *sql.DB) {
dbDriver := "mysql"
dbUser := "*****"
dbPass := "*****"
dbName := "*****"
db, err := sql.Open(dbDriver, dbUser+":"+dbPass+"@tcp("+setDatbaseInstance+":3306)/"+dbName)
if err != nil {
fmt.Printf("%#v\n DB_ERROR_CONNECTION\n", err.Error());
// return err.Error()
}else{
fmt.Println("Connection Established")
}
erro:=db.Ping()
if erro!=nil {
//do something here
fmt.Printf("%#v\n DB_PING_ERROR_CONNECTION\n", erro.Error());
}
return db
}
关于mysql - golang sql.open() 期望 0 个参数得到 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54307649/