我在一个项目中工作,并在go中使用“database / sql”包。我想使用在“database / sql”包中声明的struct“DB”作为我的func的参数,所以我可以使用sql.Open()的返回值和我的func的参数。有可能吗?代码如下:
package main
import (
"database/sql"
"fmt"
_ "github.com/Go-SQL-Driver/MySQL"
)
func main() {
var table string = "tablename"
db, err := sql.Open("mysql", "user:password@/dbname")
// read data from database
read(db, table)
}
func read(db *DB, table string) {
// read
}
此代码抛出“undefined:DB”错误。
答案 0 :(得分:19)
您必须对导入的实体使用限定符 - “名称”来自的包名称:
func read(db *sql.DB, table string)