分享
go语言查询mysql数据库
KelvinQ · · 3198 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
package dal
import (
"encoding/json"
"strconv"
"strings"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
type automethod struct {
ActionId int `orm:"pk;auto;column(ActionId)"`
ActionName string `orm:"size(150);column(ActionName)"`
ActionArg string `orm:"size(2000);column(ActionArg)"`
ActionType int `orm:"size(11);column(ActionType)"`
MethodRunName string `orm:"size(150);column(MethodRunName)"`
AssemblyId int `orm:"size(11);column(AssemblyId)"`
ClassName string `orm:"size(150);column(ClassName)"`
SubActionId int `orm:"size(11);column(SubActionId)"`
ActionRuntime string `orm:"size(150);column(ActionRuntime)"`
}
func init() {
orm.RegisterModelWithPrefix("", new(automethod))
orm.RegisterDriver("mysql", orm.DRMySQL)
orm.RegisterDataBase("default", "mysql", "root:123456@tcp(10.101.42.64:3306)/mytest?charset=utf8")
}
func PrintActionJson() interface{} {
o := orm.NewOrm()
o.Using("mytest")
var actionInfos []*automethod
sel := o.QueryTable("automethod")
count, err := sel.All(&actionInfos)
if err != nil {
return "条数" + string(count) + err.Error()
}
//json转换
jsonData, err := json.Marshal(actionInfos)
if err != nil {
return err.Error()
}
newdata := make([]automethod, len(actionInfos))
json.Unmarshal(jsonData, &newdata)
return string(jsonData)
}
func PrintActionModel() interface{} {
o := orm.NewOrm()
o.Using("mytest")
var actionInfos []*automethod
sel := o.QueryTable("automethod")
count, err := sel.All(&actionInfos)
if err != nil {
return "条数" + string(count) + err.Error()
}
//json转换
jsonData, err := json.Marshal(actionInfos)
if err != nil {
return err.Error()
}
newdata := make([]automethod, len(actionInfos))
json.Unmarshal(jsonData, &newdata)
return actionInfos
}
func PrintActionIdAndName() interface{} {
o := orm.NewOrm()
o.Using("mytest")
var actionIds []int
var actionNames []string
raw := o.Raw("select ActionId,ActionName from automethod")
num, err := raw.QueryRows(&actionIds, &actionNames)
var rowsData = make([]string, num, 100)
if err == nil {
for i := int64(0); i < num; i++ {
rowsData[i] = strconv.Itoa(actionIds[i]) + actionNames[i]
}
return strings.Join(rowsData, ",")
}
return err.Error()
}
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信3198 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
package dal
import (
"encoding/json"
"strconv"
"strings"
"github.com/astaxie/beego/orm"
_ "github.com/go-sql-driver/mysql"
)
type automethod struct {
ActionId int `orm:"pk;auto;column(ActionId)"`
ActionName string `orm:"size(150);column(ActionName)"`
ActionArg string `orm:"size(2000);column(ActionArg)"`
ActionType int `orm:"size(11);column(ActionType)"`
MethodRunName string `orm:"size(150);column(MethodRunName)"`
AssemblyId int `orm:"size(11);column(AssemblyId)"`
ClassName string `orm:"size(150);column(ClassName)"`
SubActionId int `orm:"size(11);column(SubActionId)"`
ActionRuntime string `orm:"size(150);column(ActionRuntime)"`
}
func init() {
orm.RegisterModelWithPrefix("", new(automethod))
orm.RegisterDriver("mysql", orm.DRMySQL)
orm.RegisterDataBase("default", "mysql", "root:123456@tcp(10.101.42.64:3306)/mytest?charset=utf8")
}
func PrintActionJson() interface{} {
o := orm.NewOrm()
o.Using("mytest")
var actionInfos []*automethod
sel := o.QueryTable("automethod")
count, err := sel.All(&actionInfos)
if err != nil {
return "条数" + string(count) + err.Error()
}
//json转换
jsonData, err := json.Marshal(actionInfos)
if err != nil {
return err.Error()
}
newdata := make([]automethod, len(actionInfos))
json.Unmarshal(jsonData, &newdata)
return string(jsonData)
}
func PrintActionModel() interface{} {
o := orm.NewOrm()
o.Using("mytest")
var actionInfos []*automethod
sel := o.QueryTable("automethod")
count, err := sel.All(&actionInfos)
if err != nil {
return "条数" + string(count) + err.Error()
}
//json转换
jsonData, err := json.Marshal(actionInfos)
if err != nil {
return err.Error()
}
newdata := make([]automethod, len(actionInfos))
json.Unmarshal(jsonData, &newdata)
return actionInfos
}
func PrintActionIdAndName() interface{} {
o := orm.NewOrm()
o.Using("mytest")
var actionIds []int
var actionNames []string
raw := o.Raw("select ActionId,ActionName from automethod")
num, err := raw.QueryRows(&actionIds, &actionNames)
var rowsData = make([]string, num, 100)
if err == nil {
for i := int64(0); i < num; i++ {
rowsData[i] = strconv.Itoa(actionIds[i]) + actionNames[i]
}
return strings.Join(rowsData, ",")
}
return err.Error()
}