怎么获取beego查询的的结果,Students这个里面的结果为啥是初始化的?

``` package main import ( "fmt" _ "github.com/go-sql-driver/mysql" //引入mysql驱动 "github.com/astaxie/beego/orm" //对应的beego/orm库 可以通过 go get来获取到本地GOPATH路径下 "time" ) //与数据库学生表映射的结构体 type studentinfo struct { Id int `pk:"auto"` Stuname string `orm:"size(20)"` Stuidentify string `orm:"size(30)"` Stubirth time.Time Stuclass string `orm:"size(30)"` Stumajor string `orm:"size(30)"` } //数据库连对象需要的信息 var ( dbuser string = "root" dbpwd string = "pingan" dbname string = "takephoto" ) var Students []studentinfo //初始化orm func init() { Students = make([]studentinfo, 10240) conn := dbuser + ":" + dbpwd + "@tcp(192.168.1.15:3306)/" + dbname + "?charset=utf8" // 组合成连接串 orm.RegisterModel(new(studentinfo)) // 注册表studentinfo 如果没有会自动创建 orm.RegisterDriver("mysql", orm.DRMySQL) // 注册mysql驱动 orm.RegisterDataBase("default", "mysql", conn) // 设置conn中的数据库为默认使用数据库 orm.RunSyncdb("default", false, true) // 后一个使用true会带上很多打印信息,数据库操作和建表操作的;第二个为true代表强制创建表 } func main() { orm.Debug = true // true 打印数据库操作日志信息 dbObj := orm.NewOrm() // 实例化数据库操作对象 time := time.Now().Format("2006-01-02 15:04:05") sql := fmt.Sprintf("insert into studentinfo(Id,Stuname, Stuidentify, Stubirth, Stuclass, Stumajor)" + " values(1, 'rjx', 'xxx319928xxx', '%s', '信管1班', '信息管理与信息系统')", time) fmt.Println(sql) _, err := dbObj.Raw(sql).Exec() if err != nil { fmt.Println("插入数据至:t_studentInfo出错") } sql = fmt.Sprintf("insert into studentinfo(Id, Stuname, Stuidentify, Stubirth, Stuclass, Stumajor)"+ " values(2, 'qcy', 'xxx319918xxx', '%s', 'XXX', 'YYYYYY')", time) _, err = dbObj.Raw(sql).Exec() if err != nil { fmt.Println("插入数据至:t_studentInfo出错") } //更新数据 sql = "update studentinfo set Stuname='qcym' where Id = 2" _, err = dbObj.Raw(sql).Exec() if err != nil { fmt.Println("更新t_studentInfo表出错") } //通过事务方式来进行数据插入 err = dbObj.Begin() sql = fmt.Sprintf("insert into studentinfo(Id, Stuname, Stuidentify, Stubirth, Stuclass, Stumajor)"+ " values(3, 'loe', 'xxx319918xxx', '%s', 'zzzz', 'TTTT')", time) _, err = dbObj.Raw(sql).Exec() if err != nil { dbObj.Rollback() fmt.Println("插入t_studentInfo表出错,事务回滚") } else { dbObj.Commit() fmt.Println("插入t_studenInfo表成功,事务提交") } //查询数据库 sql = "select Id, Stuname, Stuidentify, Stubirth, Stuclass, Stumajor from studentinfo" fmt.Println(sql) num, er := dbObj.Raw(sql).QueryRows(&Students) if er != nil { fmt.Println("查询学生信息条数出错") } else { fmt.Printf("从t_studenInfo表中共查询到记录:%d条\n", num) fmt.Printf("students2 is : %v\n", Students) for index, _ := range Students { fmt.Printf("第%d个学生个人信息:", index + 1) fmt.Printf("用户Id : %d, 姓名 : %s, 身份证号 : %s, 出生日期 : %s, 班级 : %s, 专业 : %s\n", Students[index].Id, Students[index].Stuname, Students[index].Stuidentify, Students[index].Stubirth, Students[index].Stuclass, Students[index].Stumajor) } } } ```
已邀请:

astaxie - 创造、获取、分享、传播和应用Go

赞同来自: lifei6671 heshaofeng

`var Students []*studentinfo`

lifei6671 - PHPer

赞同来自: heshaofeng

你的代码应该高亮。难道不会markdown语法吗?
[{0 0001-01-01 00:00:00 +0000 UTC } {0 0001-01-01 00:00:00 +0000 UTC } {0 0001-01-01 00:00:00 +0000 UTC }]

要回复问题请先登录注册