beego之操作model
1.环境配置
1>.下载安装orm
go get github.com/astaxie/beego/orm
默认安装路径在gopath路径下,可使用go env查看路径
2>.导入mysql包
2..在controller目录下创建一个TestMode.go控制器
1>.代码
package controllers import ( "fmt" "github.com/astaxie/beego" "github.com/astaxie/beego/orm" _ "github.com/go-sql-driver/mysql" ) //model的表示UserTable,操作数据库中的表名叫user_table type UserTable struct { Id int64 Username string Password string } type TestModelController struct { beego.Controller } func (c *TestModelController) Get() { //注册数据库 //参数一:默认default //参数二:数据库类型MySQL //参数三:数据库用户名:密码@tcp(ip:port)/数据库名?charset=utf8为字符编码格式 //参数四:超时时间 orm.RegisterDataBase("default", "mysql", "test:test@tcp(192.168.5.200:3306)/testdb?charset=utf8", 30) //注册UserTabele表 orm.RegisterModel(new(UserTable)) //申明对象 o := orm.NewOrm() //设置数据 user := UserTable{Username: "xiaoming", Password: "123456"} //插入数据 id, err := o.Insert(&user) //web上显示内容 c.Ctx.WriteString(fmt.Sprintf("id: %d err: %v", id, err)) }
2>.数据操作方法以及go中结构体和数据库中的表格对应关系
3.在routers目录下添加对应路由
4.mysql设置
1>.进入数据库 mysql -u 用户名 -p
下面是以root用户登录的
2>.我这里首先建立新的用户testdb,对应代码中对应
可以使用 下面命令,查看用户列表
select user, host from mysql.user;
创建新用户,用户名test 密码test
use mysql
create user test identified by 'test' ;
flush privileges //刷新
select user, host from mysql.user; //查看用户
3>.创建数据库
create database testdb; 和代码中对应
flush privileges; //刷新
show databases;
4>.设置权限 为user用户赋予操作数据库testdb的所有权限
grant all privileges on testdb.* to test identified by 'test';
5>.退出,
quit;
6>.使用test用户登录
mysql -u test -p
查看数据库
show databases;
查看表格
show tables;
7>.创建表格user_table,三个参数id、username、password
create table user_table( id int(11) auto_increment, username varchar(32),password varchar(128),primary key(id));
参考链接:https://www.yiibai.com/mysql/mysql_create_tables.html
语法:
8.查看表格
desc user_table;
5.运行程序查看效果
浏览器效果,表明插入成功
查看数据库表格中数据
select *from user_table;
注:参考文件