go 1.4.2を使ってMacで開発しています。
ローカルのMysql(5.6)と接続したいのですが、以下のコードだと接続できません。
package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) func main() { db, err := sql.Open("mysql", "root:@/test") if err != nil { panic(err.Error()) } defer db.Close() // 関数がリターンする直前に呼び出される rows, err := db.Query("SELECT id FROM posts") // if err != nil { panic(err.Error()) } fmt.Println(columns) // カラム名を取得 values := make([]sql.RawBytes, len(columns)) // rows.Scan は引数に `[]interface{}`が必要. scanArgs := make([]interface{}, len(values)) for i := range values { scanArgs[i] = &values[i] } for rows.Next() { err = rows.Scan(scanArgs...) if err != nil { panic(err.Error()) } var value string for i, col := range values { // Here we can check if the value is nil (NULL value) if col == nil { value = "NULL" } else { value = string(col) } fmt.Println(columns[i], ": ", value) } fmt.Println("-----------------------------------") } }
実行すると、
./main.go:22: undefined: columns
./main.go:24: undefined: columns
./main.go:47: undefined: columns
となってしまいます。
解決策宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/07/29 05:56