9

我正在一个项目中工作并在 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
}

此代码引发“未定义:DB”错误。

4

1 回答 1

19

您必须对导入的实体使用限定符 - 'name' 来自的包名称:

func read(db *sql.DB, table string)
于 2013-08-15T15:50:40.853 回答