简短答案:
它仅出于副作用导入软件包。
从执行规范:
要仅出于副作用(初始化)导入软件包,请使用空白标识符作为显式软件包名称:
导入_“ lib / math”
在sqlite3
对于go-sqlite3,下划线导入用于将
sqlite3驱动程序注册为该
init()函数中的数据库驱动程序的副作用,而无需导入任何其他函数:
sql.Register("sqlite3", &SQLiteDriver{})以这种方式注册后,可将sqlite3与
sql代码中的标准库接口一起使用,如示例所示:
db, err := sql.Open("sqlite3", "./foo.db")


