github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/mattn/go-sqlite3/_example/mod_vtable/extension.go (about) 1 package main 2 3 import ( 4 "database/sql" 5 "fmt" 6 "github.com/insionng/yougam/libraries/mattn/go-sqlite3" 7 "log" 8 ) 9 10 func main() { 11 sql.Register("sqlite3_with_extensions", 12 &sqlite3.SQLiteDriver{ 13 Extensions: []string{ 14 "sqlite3_mod_vtable", 15 }, 16 }) 17 18 db, err := sql.Open("sqlite3_with_extensions", ":memory:") 19 if err != nil { 20 log.Fatal(err) 21 } 22 defer db.Close() 23 24 db.Exec("create virtual table repo using github(id, full_name, description, html_url)") 25 26 rows, err := db.Query("select id, full_name, description, html_url from repo") 27 if err != nil { 28 log.Fatal(err) 29 } 30 defer rows.Close() 31 for rows.Next() { 32 var id, full_name, description, html_url string 33 rows.Scan(&id, &full_name, &description, &html_url) 34 fmt.Printf("%s: %s\n\t%s\n\t%s\n\n", id, full_name, description, html_url) 35 } 36 }