比如go连接mysql,https://github.com/jmoiron/sqlx是实现了go官方database/sql的一个客户端,额外还需要驱动:https://github.com/go-sql-dri...,才能使用。但是我在连接mongodb的时候,就不是这样,直接使用https://github.com/go-mgo/mgo就能和mongoserver交互了。是因为mgo集成了驱动和客户端两者?现在又发现mongo官方开源的:https://github.com/mongodb/mo...,貌似也是直接用就可以了,不会存在驱动和客户端分开的情况
2 回答
米脂
TA贡献1836条经验 获得超3个赞
golang的database/sql看包名可以知道是跟关系数据库有关的。只提供一套抽象接口,go-sql-driver是实现了这套接口的驱动,用的时候我们还是直接用database/sql就可以了,这叫面向接口编程mgo是Mongodb的连接程序,跟database/sql接口没有关系。
拉风的咖菲猫
TA贡献1995条经验 获得超2个赞
mongodb是一家公司生产的一个非关系型数据库产品,mgo本身就扮演者驱动的角色.而sqlx相当于是符合SQL访问方式的数据库抽象层,作用与java里的jdbc标准类似,具体到每一个数据库产品还需要根据各个产品适配,也就是需要驱动来完成.
添加回答
举报
0/150
提交
取消