最近は sqlx というライブラリを使ってDB周りの操作をしているのですが, 標準ライブラリ database/sql
にあるsql.Conn
を使いたいと思ったのですが, なんと sqlx にはありませんでした.
「マジか...」と思ったのですが, 調べたら sqlx.Conn
が見つかって無事解決しました. しかし, これを見つけるまでに詰まったので解決方法を書いときたいと思います.
解決方法
go get github.com/jmoiron/sqlx@master
で sqlx をインストールする.
これで sqlx.Conn
が使えます.
結局何が原因だったのか
sql.Conn
を含む database/sql
にある構造体や関数に対応する構造体や関数は sqlx に存在します. ドキュメントにも書いてあります. しかし, 普通にREADMEに従って go get github.com/jmoiron/sqlx
でインストールするとうまく行きません. この問題の原因は sqlx のタグが v1.2.0 から更新されていないからです.
しかし, コード自体は更新され続けているので, リポジトリのmasterブランチを指定してインストールすればきちんと更新されたコードを元にインストールできるのです. go get github.com/jmoiron/sqlx@master