1

次のようなテスト キースペースをクエリしようとしています。

package main

import "fmt"
import  _ "github.com/gocql/gocql"

var (
    gocql string
)

func main() {
    // connect to the cluster
    cluster := gocql.NewCluster("127.0.0.1")
    cluster.Keyspace = "dbaccess"
    session, _ := cluster.CreateSession()
    defer session.Close()

    if err := session.Query("SELECT name, age FROM people WHERE name='doug'").Scan(&name, &age); err != nil {
        log.Fatal(err)
    }
    fmt.Println(name, age)
}

しかし、次のようなエラーが表示されます。

12: gocql.NewCluster undefined (type string has no field or method NewCluster)

これは、gocql/gocql フォルダー内のメソッドをポイントしようとしているが、それが見つからないということですか、それとも、インポートする構文が間違っているということですか?

4

1 に答える 1

2

あなたの問題は、ここで gocql var を文字列として宣言していることだと思います:

var (
    gocql string
)

これを削除するだけで、その特定の問題が解決するはずです。

さらに、インポートステートメント:

import  _ "github.com/gocql/gocql"

_副作用のためにインポートするだけでなく、明示的に gocql を使用しているため、アンダースコア ( ) を含めないでください。

于 2016-01-14T01:11:44.577 に答える