return sql.ErrNoRows
Running a select with no rows returns a scan error sql: Scan error on column index 0, name "foo": converting NULL to string is unsupported
when a sql.ErrNoRows
sql: no rows in result set
would have been expected (what mattn/go-sqlite3
returns. Something similar happens for Query
returning sql.Rows
package main
import (
"database/sql"
"fmt"
_ "modernc.org/sqlite"
// _ "github.com/mattn/go-sqlite3"
)
func check(err error) {
if err != nil {
panic(err)
}
}
func main() {
db, _ := sql.Open("sqlite", "test.db")
db.Exec(`CREATE TABLE test (foo TEXT)`)
row := db.QueryRow(`SELECT foo FROM test`)
var foo string
err := row.Scan(&foo)
fmt.Println(err)
}