绑定完请刷新页面
取消
刷新

分享好友

×
取消 复制
使用golang封装我们自己的sql框架
2019-11-13 14:45:37

来源:机器人在追你



1. 导入相关包

database/sql: 这是一个对关系型数据库的通用抽象,它提供了标准的、轻量的、面向行的接口。

encoding/json: Go语言自带的JSON转换库。

go-sql-driver/mysql: 这是对database/sql的实现。

strconv: 对字符串和基本数据类型之间的转换。

strings:主要涉及字符串的基本操作。

2. 定义结构体

*sql.DB: sql链接对象。

tableName: 表名。

field: 默认是"*",表示全部列名。

allFields: 数据库的全部列名。

where: where条件。

order: 排序。

limit: 限制条件。

3. 定义几个辅助函数

3.1 in_array函数判断某个field是否在数据库的field中。

3.2 构造返回值函数(errCode, result, msg)。

4. 创建Model结构体的构造函数

5. 创建Model的方法,实现getConnect()和getFields()

5.1 getConnect()方法用于返回sql连接对象

5.2 getFields()方法用于搜集数据库所有的列名

6. Model一些基本成员方法的实现

6.1 Field()方法

6.2 Order()方法

6.3 Limit()方法

6.4 Where方法

6.5 count()方法

7. Model结构体两个核心执行方法

7.1 查询query(),这个方法主要用来执行查询操作

7.2 执行exec()方法,这个方法主要用来执行添加\删除\更新操作

8. Model结构体基本的增删改查方法

8.1 查询(查询数据库数据)

8.1.1 查询所有

8.1.2 根据条件查询一个

8.2 增加(向数据库增加数据)

8.2 删除(从数据库删除数据)

8.3 更新(更新数据库相关数据)

9. 测试

10. 注意在使用之前,需要创建test数据库和user表

分享好友

分享这个小栈给你的朋友们,一起进步吧。

应用开发
创建时间:2020-06-17 15:31:04
应用软件开发是指使用程序语言C#、java、 c++、vb等语言编写,主要是用于商业、生活应用的软件的开发。
展开
订阅须知

• 所有用户可根据关注领域订阅专区或所有专区

• 付费订阅:虚拟交易,一经交易不退款;若特殊情况,可3日内客服咨询

• 专区发布评论属默认订阅所评论专区(除付费小栈外)

技术专家

查看更多
  • 栈栈
    专家
戳我,来吐槽~