package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/go-sql-driver/mysql"
)
func main() {
//Connect to database and check for errors
db, err := sql.Open("mysql",
"script:scriptPassword@tcp($HOSTNAME:3306)/Testing")
if err != nil {
log.Println(err)
}
var str string
rows, err = db.Query("SELECT * FROM animals").Scan(&str)
if err != nil && err != sql.ErrNoRows {
log.Fatal(err)
}
cols, err := rows.Columns() // Remember to check err afterwards
if err != nil {
log.Fatal(err)
}
vals := make([]interface{}, len(cols))
for i, _ := range cols {
vals[i] = new(sql.RawBytes)
}
for rows.Next() {
err = rows.Scan(vals...)
// Now you can check each element of vals for nil-ness,
if err != nil {
log.Fatal(err)
}
// Here is where I get lost
// How should I access Vals and print the values it finds???
}
fmt.Println(mysqlValues)package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/go-sql-driver/mysql"
)
func main() {
//Connect to database and check for errors
db, err := sql.Open("mysql",
"script:scriptPassword@tcp($HOSTNAME:3306)/Testing")
if err != nil {
log.Println(err)
}
var str string
rows, err = db.Query("SELECT * FROM animals").Scan(&str)
if err != nil && err != sql.ErrNoRows {
log.Fatal(err)
}
cols, err := rows.Columns() // Remember to check err afterwards
if err != nil {
log.Fatal(err)
}
vals := make([]interface{}, len(cols))
for rows.Next() {
for i := range cols {
vals[i] = &vals[i]
}
err = rows.Scan(vals...)
// Now you can check each element of vals for nil-ness,
if err != nil {
log.Fatal(err)
}
for i := range cols {
fmt.Println(vals[i]) }
}
# command-line-arguments./2multi.go:22: rows.Columns undefined (type error has no field or method Columns)./2multi.go:30: rows.Next undefined (type error has no field or method Next)./2multi.go:34: rows.Scan undefined (type error has no field or method Scan)--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
# command-line-arguments./2multi.go:20: multiple-value db.Query() in single-value contextvar str1 stringvar str2 stringrows := db.QueryRow("SELECT * FROM animals").Scan(&str1, &str2)user@server:~/folder/~# go run query.go [50][99 97 116][49][100 111 103][52][108 97 120][54][111 115 116 114 105 99 104][51][112 101 110 103 117 105 110][53][119 104 97 108 101]