sqlite3, err := sql.Open("sqlite3", "./map.gpkg")
if err != nil {
panic(err.Error())
}
_, err = sqlite3.Exec("select load_extension('mod_spatialite');")
if err != nil {
panic(err.Error())
}
當我嘗試將 spatialite 擴展加載到 sqlite3 時,它回傳一個未授權的錯誤,我不知道如何修復它。
panic: not authorized
goroutine 1 [running]:
main.main()
/Users/u/project/project/golang_project/pack/sql/main.go:42 0x145
exit status 2
uj5u.com熱心網友回復:
您需要使用 SQLiteDriver 的 Extensions 欄位注冊擴展:
sql.Register("sqlite3_TestExtensionsError",
&sqlite3.SQLiteDriver{
Extensions: []string{
"foobar",
},
},
)
見這個例子:https ://github.com/mattn/go-sqlite3/blob/1157a4212dcb650962563f67cd405794e9115b45/sqlite3_load_extension_test.go#L15
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/422618.html
標籤:
