xorm框架连接mysql实现crud
准备工作:创建数据库
Go语言连接mysql
安装包
go get "gethub.com/go-sql-driver/mysql"
go get "gethub.com/jmoiron/sqlx"
Exec增删改
//连接数据库信息
var (userName string = "root"passWord string = "123456"idAddress string = "127.0.0.1"port string = "3306"dbName string = "go_text"charset string = "utf8"
)// 连接数据库这里用*来保证连接的是同一个对象
//root:123456@tcp(127.0.0.1:3306)/go_text?charset=utf8
func connectMySQL() *sqlx.DB {dbstr := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=%s", userName, passWord, idAddress, port, dbName, charset)DB, err := sqlx.Open("mysql", dbstr)fmt.Println(err)ping(DB)return DB}
func ping(DB *sqlx.DB) {err := DB.Ping()if err != nil {fmt.Println("ping failed")} else {fmt.Println("ping success")}
}
func textExec(mysqlDB *sqlx.DB) {//Exec 指行sql语句insertSQL := "insert into user(userid,username,password,avatar,create_time,update_time)values(?,?,?,?,?,?)"result, err := mysqlDB.Exec(insertSQL, 10000, "周南", "123456", "ks.png", "2022-11-11 11:11:11", "2022-11-11 11:11:11")if err != nil {fmt.Println("数据插入失败", err)return}id, _ := result.LastInsertId()fmt.Println(id)//修改updateSQL := "update user set username='打阿伟'where id =1"result2, err := mysqlDB.Exec(updateSQL)rowNum, _ := result2.RowsAffected() //受到印象的行数fmt.Println("更新成功,affected rows", rowNum)//删除deleteSQL := "delete from user where id =2"result3, err := mysqlDB.Exec(deleteSQL)rowNum1, _ := result3.RowsAffected() //受到印象的行数fmt.Println("删除成功,affected rows", rowNum1)
}
查询
Query查询
unc textQuery(mysqlDB *sqlx.DB) {querySql := "select *from user"rows, err := mysqlDB.Query(querySql)if err != nil {fmt.Println("数据查询失败", err)return}fmt.Println(rows)//返回一个结果集rows//next来获取结果//要关闭结果集for rows.Next() {var id, userid intvar username, password, avatar, create_time, update_time stringrows.Scan(&id, &userid, &username, &password, &avatar, &create_time, &update_time)fmt.Println(id, userid, username, password, avatar, create_time, update_time)}rows.Close()
}
Get和Select查询
mysqlDB := connectMySQL()defer mysqlDB.Close()type user struct {Id int `db:"id"`UserId int `db:"userid"`UserName string `db:"username"`Password string `db:"password"`Avatar string `db:"avatar"`CreateTime string `db:"create_time"`UpdateTime string `db:"update_time"`}userData := new(user)mysqlDB.Get(userData, "select * from user where id =1")fmt.Println(*userData)var userSlice []usererr := mysqlDB.Select(&userSlice, "select*from user")if err != nil {fmt.Println(err)}for i := range userSlice {fmt.Println(userSlice[i])}}
xorm框架连接mysql实现crud相关推荐
- pycharm中django框架连接mysql数据库
1.首先下载安装pymysql模块. pip install pymysql 如果出现 timeout 超时可以使用其他的资源下载: pip install 模块名 -i https://pypi.d ...
- struts2 mysql_Struts2连接Mysql的Crud使用
今天分享的是struts2框架中增删改查的用法: 一:利用Struts2框架 1.1在pom.xml中导入相关依赖 4.0.0 com.ht T224_struts war 0.0.1-SNAPSHO ...
- ABP框架连接Mysql数据库
开始想用Abp框架来搭建公司的新项目,虽然一切还没有定数,但是兵马未动,粮草先行,我先尝试一下整个过程,才能够更好的去争取机会. 此次技术选型:Abp(Asp.Net core mvc)+mysql( ...
- abp框架连接mysql报错_ABP框架应用-MySQL数据库集成
1. 框架以外依赖包引入 1.1. Pomelo.EntityFrameworkCore.MySql 1.2. Pomelo.EntityFrameworkCore.MySql.Design 2 ...
- 十八、Express框架连接MySQL数据库操作
在上一篇中已经在Node.js中引入使用了mysql模块进行数据库的基本操作,在本篇当中在Express框架中来连接数据库以及操作数据库: Express 项目环境 这里是通过全局安装Express框 ...
- Django框架连接MySQL数据库
pymysql安装 pymysql就是作为python3环境下mysqldb的替代物,进入命令行,使用pip安装pymysql pip install pymysql 在主项目的文件中设置连接 在项目 ...
- ssm框架连接mysql数据库的具体步骤_ssm框架搭建和整合流程
Spring + SpringMVC + Mybatis整合流程 1 需求 1.1 客户列表查询 1.2 根据客户姓名模糊查询 2 整合思路 第一步:整合dao层 ...
- Flask框架连接mysql数据库
1.安装mysql 下载安装包进行安装,可以参考 安装mysql 安装完成后修改密码 2.登录数据库 进入到安装目录bin下,打开cmd窗口 在cmd出口中输入命令 mysql -u root -p ...
- springboot整合jpa之连接MySql实现crud
整体思路:搭建springboot一定要注意版本问题,各个jar包之间是否兼容.搭建可以从上往下进行,是一个从Controller层和Service层-->Dao层的一个过程. 1.添加mave ...
最新文章
- python爬虫实战案例-Python爬虫实战案例:手机APP抓包爬虫
- w3wp进程发生死锁ISAPI aspnet
- Linux 环境编程 用户层定时器使用二 timer_create的使用
- C++ Primer 5th笔记(chap 18 大型程序工具) using指示
- c语言获取当前日期和时间
- 11gR2 RAC手动添加节点数据库实例
- 实战绕过宝塔PHP disable_function 限制getshell
- codeforces1440 D. Graph Subset Problem
- web系统四层结构中服务器端,基于.NET平台构建四层B/S结构的动态网站
- 【TSP】基于matlab混合粒子群算法求解旅行商问题【含Matlab源码 397期】
- 语音库构建_推动数据采用,以通过语音接口构建更好的产品
- Python植物大战僵尸源码分享
- 西门子PLC编写抢答系统
- Python标准库大全
- 【正本清源】算力大战根本就从未开始过!BCH分叉事件之技术细节七问
- 开机出现recovering journal解决办法
- android波纹动画,Android实现水波纹特效
- Linux:冯诺伊曼体系结构 | 操作系统 | 显卡 | 主板
- 藤子不二雄博物馆之行
- 联想电脑安装Ubuntu后无法进入bios
热门文章
- 如何解决Office365无法登录
- 为什么每次启动Word总是进入“ 安全模式”?
- 10 – 音效的添加
- Python 类属性与实例属性
- 重置电脑解决“win10无法正常开机”的问题
- 轩辕传奇服务器维护,轩辕传奇3月12日部分服务器停服更新 黄金猪与招财兔活动来袭...
- 产品思考 - 多多果园的新玩法
- vue2.0有关时间戳 时间的公共方法(YYYY-MM-DD HH:mm:ss,YYYY-MM-DD,HH:mm:ss,转化为 utc 时间,utc转标准时间,相对时间,日/月/年 时:分:秒)
- 计算机二维全息图原理,计算机辅助合成全息图.pdf
- Java中的八大包装类(Wrapper)