type User struct {
Id int `orm:"pk;auto"`
Age int16
Name string
}
func init() {
orm.RegisterDriver("mysql", orm.DRMySQL)
orm.RegisterModel(new(User))
orm.RegisterDataBase("default", "mysql", "root:[email protected]:3306/test?charset=utf8")
}
func main() {
o := orm.NewOrm()
o.Using("default")
user := new(User)
user.Age = 30
user.Name = "slene"
fmt.Println(o.Insert(&user))
}
如上代码,执行提示:
exit status 2
[ORM]2017/02/10 17:01:35 register db Ping default, default addr for network '123.63.17.199:3306' unknown
must have one register DataBase alias named default
user := new(User) is already *User. and you still use o.Insert(&user).
你没有处理 orm.RegisterDataBase 的error,这个错误消息不一定是没有定义default导致,而是因为orm.RegisterDataBase返回错误,没有注册成功,导致没有发现命名为 default的数据库注册
怎么解决的
我也遇到这样的问题,请问怎么解决的?
why do you guys use Chinese language here?? -_-
I experience same thing. I solved the problem by changing connection string to: "root:root@tcp(123.63.17.199:3306)/test?charset=utf8"
Hope can help you all
tcp(123.63.17.199:3306
thanx!
import (
"fmt"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
err:=orm.RegisterDataBase(aliasName, driverName, dbUrl,maxIdle,maxConn)
if err != nil {
panic(err)
}
注意导入和注意判断错误
import (
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
must import _ "github.com/go-sql-driver/mysql"
Most helpful comment
why do you guys use Chinese language here?? -_-