为了账号安全,请及时绑定邮箱和手机立即绑定

有没有解决未授权错误的方法?

有没有解决未授权错误的方法?

Go
三国纷争 2022-10-31 15:26:59
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 authorizedgoroutine 1 [running]:main.main()        /Users/u/project/project/golang_project/pack/sql/main.go:42 +0x145exit status 2
查看完整描述

2 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

您需要使用 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


查看完整回答
反对 回复 2022-10-31
?
潇湘沐

TA贡献1816条经验 获得超6个赞

sql.Register("sqlite3_with_extensions",

    &sqlite3.SQLiteDriver{

        Extensions: []string{

            "mod_spatialite",

        },

    })


db, err := sql.Open("sqlite3_with_extensions", "./map.gpkg")

if err != nil {

    panic(err.Error())

}

我如上所述更改了代码,并且我的代码工作正常。


查看完整回答
反对 回复 2022-10-31
  • 2 回答
  • 0 关注
  • 161 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信