chai icon indicating copy to clipboard operation
chai copied to clipboard

Scan: unsupported type reflect.Value. parameter is not a valid reference

Open hjlp20150803 opened this issue 11 months ago • 0 comments

What version of Chai are you using?

github.com/chaisql/chai v0.16.0

What did you do?

package main

// import chai as a blank import import ( "database/sql" "log"

"github.com/chaisql/chai/driver"

)

type User struct { Id int Name string Age int }

func main() {

// Create a sql/database DB instance
db, err := sql.Open("chai", "mydb")
if err != nil {
	log.Fatal(err)
}
defer db.Close()
if _, err = db.Exec(`

CREATE TABLE user ( id int, name TEXT , age int ) `); err != nil { log.Println("exec.create :", err) }

if _, err = db.Exec(`INSERT INTO user (id, name, age) VALUES (?, ?, ?)`, 20, "foo", 40); err != nil {
	log.Println("exec.INSERT :", err)
}

if row := db.QueryRow("SELECT id, name, age, address FROM user WHERE age >= ?", 18); row != nil {

	var u User
	if err = row.Scan(driver.Scanner(&u)); err == nil {
		log.Println("u:", u)
	} else {
		log.Println("Scan:", err)
	}
}

}

What did you expect to see?

read out data in db into user

What did you see instead?

2024/03/13 20:25:03 Scan: unsupported type reflect.Value. parameter is not a valid reference

hjlp20150803 avatar Mar 13 '24 12:03 hjlp20150803