为了账号安全,请及时绑定邮箱和手机立即绑定

当驱动程序具有相同名称时,在 Golang 中选择运行时 SQL 驱动程序

当驱动程序具有相同名称时,在 Golang 中选择运行时 SQL 驱动程序

Go
皈依舞 2022-10-24 16:03:21
我想知道当这两个驱动程序具有相同名称时,是否有一种方法或投影模式能够在运行时在 Golang 中选择 SQL 驱动程序。我想使用环境变量在 HTTP ClickHouse 驱动程序 ( https://github.com/mailru/go-clickhouse ) 和本机 TCP ClickHouse 驱动程序 ( https://github.com/ClickHouse/clickhouse-go ) 之间切换。import(//HTTP driver_ "github.com/mailru/go-clickhouse")func getHttpCHConnection() (*sql.DB, error) {   ...   db, err := sql.Open("clickhouse", clkConnUrl)import(//Native driver_ "github.com/ClickHouse/clickhouse-go")func getNativeCHConnection() (*sql.DB, error) {    ...    db, err := sql.Open("clickhouse", clkConnUrl)通常,它会导致“恐慌:sql:为驱动程序 clickhouse 调用两次注册”。有可能避免这种情况吗?
查看完整描述

1 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

由于 mailru/go-clickhouse 的第 2 版可以同时使用它们,作者已将驱动程序名称更改为chhttphttps ://github.com/mailru/go-clickhouse/issues/151


查看完整回答
反对 回复 2022-10-24
  • 1 回答
  • 0 关注
  • 137 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号