我想知道當這兩個驅(qū)動程序具有相同名稱時,是否有一種方法或投影模式能夠在運行時在 Golang 中選擇 SQL 驅(qū)動程序。我想使用環(huán)境變量在 HTTP ClickHouse 驅(qū)動程序 ( https://github.com/mailru/go-clickhouse ) 和本機 TCP ClickHouse 驅(qū)動程序 ( 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:為驅(qū)動程序 clickhouse 調(diào)用兩次注冊”。有可能避免這種情況嗎?
1 回答

牧羊人nacy
TA貢獻1862條經(jīng)驗 獲得超7個贊
由于 mailru/go-clickhouse 的第 2 版可以同時使用它們,作者已將驅(qū)動程序名稱更改為chhttp
:https ://github.com/mailru/go-clickhouse/issues/151
- 1 回答
- 0 關(guān)注
- 131 瀏覽
添加回答
舉報
0/150
提交
取消