示例:
package controllers import ( "database/sql" "fmt" "github.com/astaxie/beego" _ "github.com/go-sql-driver/mysql" ) type MysqlController struct { beego.Controller } func (c *MysqlController) Get() { // 连接数据库 db, err := sql.Open("mysql", "root:Pd940810@tcp(127.0.0.1:3306)/test?charset=utf8") if err != nil { beego.Info("连接数据库出错", err) return } // 关闭数据库连接 defer db.Close() // 创建表 _, err = db.Exec("create table userInfo(id int not null auto_increment primary key, name varchar(11) unique)") if err != nil { fmt.Printf("创建表出错:%v", err) return } // 插入数据 _, err = db.Exec("insert into userInfo (name) values (?)", "乔治") if err != nil { fmt.Printf("创建表出错:%v", err) return } // 查询数据 rows, err := db.Query("select * from userInfo") type UserInfo struct { Id int Name string } var u UserInfo for rows.Next() { err = rows.Scan(&u.Id, &u.Name) fmt.Println(u) } // 更新数据 _, err = db.Exec("update userInfo set name='pd' where id=1") c.Ctx.WriteString("testing...") }