Вы можете преобразовать sql.DB
(который является структурой, а не интерфейсом) в sqlx.DB
, используя метод sqlx NewDb
: Код
Этот метод требует *sql.DB
, а также имя драйвера в виде строки.
Вот пример использования «mysql» для драйвера:
var myDb *sql.DB
...
anSqlxDb := sqlx.NewDb(myDb, "mysql") // returns *sqlx.DB
Изменить: чтобы добавить ответ на новый вопрос, который был задан в комментариях, также можно сделайте обратное и получите *sql.DB
от *sqlx.DB
.
Структура *sqlx.DB
содержит встроенный *sql.DB
( Код ). Как встроенную структуру, ее можно получить, используя ее имя типа (DB
):
var mySqlxDb *sqlx.DB
...
var anSqlDb := mySqlxDb.DB