MacOS 安装 go-sqlite3 问题与解决

简介: MacOS 安装 go-sqlite3 问题与解决

如果直接下载的话,报错如下:


go get github.com/mattn/go-sqlite3
go get: module github.com/mattn/go-sqlite3: reading https://athens.azurefd.net/github.com/mattn/go-sqlite3/@v/list: 504 Gateway Timeout

第一步


Mac OS X
1. 经过 Homebrewn 安装:html
brew install pkgconfig
brew install sqlite3

执行结果如下:


➜  ~ brew install pkgconfig
Warning: pkg-config 0.29.2_3 is already installed and up-to-date.
To reinstall 0.29.2_3, run:
  brew reinstall pkg-config
➜  ~ brew install sqlite3
Warning: sqlite 3.37.0 is already installed and up-to-date.
To reinstall 3.37.0, run:
  brew reinstall sqlite

第二步


brew link pkgconfig --force
brew link sqlite3 --force

第三步


go get github.com/mattn/go-sqlite3

结果如下:

go: downloading github.com/mattn/go-sqlite3 v1.14.9

sqllite 测试用例


package mysql
import (
 "fmt"
 "testing"
 "github.com/jinzhu/gorm"
 //_ "github.com/jinzhu/gorm/dialects/sqlite"
 _ "github.com/mattn/go-sqlite3"
)
type Product struct {
 gorm.Model
 Code  string
 Price uint
}
func (Product) TableName() string {
 return "hax_products"
}
func Test(t *testing.T) {
 db, err := gorm.Open("sqlite3", "test.db")
 if err != nil {
  panic("failed to connect database")
 }
 defer db.Close()
 gorm.DefaultTableNameHandler = func(db *gorm.DB, defaultTableName string) string {
  return "hax_" + defaultTableName
 }
 db.LogMode(true)
 // Migrate the schema
 db.AutoMigrate(&Product{})
 db.Create(&Product{Code: "L1212", Price: 1000})
 var product Product
 db.First(&product, 1)
 var products []Product
 db.Find(&products)
 fmt.Printf("Total count %d", len(products))
}

macos 安装有问题,可以参考 https://segmentfault.com/q/1010000000162180 这个解决

相关文章
|
8天前
|
SQL JavaScript 数据库
sqlite在Windows环境下安装、使用、node.js连接
sqlite在Windows环境下安装、使用、node.js连接
|
24天前
|
Ubuntu Go 开发工具
Unbuntu 一键安装制定版本的Go环境
该文章提供了在Ubuntu系统上一键安装指定版本的Go语言环境的详细步骤,包括删除旧版本Go、下载并解压新版本Go到指定目录、配置Go环境变量,以及安装其他必要的开发工具。
15 2
|
1月前
|
存储 Ubuntu Go
在Ubuntu 16.04上安装Go 1.6的方法
在Ubuntu 16.04上安装Go 1.6的方法
30 1
|
1月前
|
存储 Ubuntu Go
在Ubuntu 18.04上安装Go的方法
在Ubuntu 18.04上安装Go的方法
22 1
|
1月前
|
存储 Ubuntu Linux
在Ubuntu 14.04上安装Go 1.6的方法
在Ubuntu 14.04上安装Go 1.6的方法
37 1
|
1月前
|
Linux Shell Go
如何构建和安装 Go 程序
如何构建和安装 Go 程序
28 1
|
1月前
|
Linux Go
Linux——windows10下的Ubuntu18.04安装并配置go环境
Linux——windows10下的Ubuntu18.04安装并配置go环境
35 1
|
1月前
|
Linux 编译器 Go
【go笔记】从安装到helloworld
【go笔记】从安装到helloworld
|
1月前
|
缓存 NoSQL 关系型数据库
Go - 开箱即用,WEB 界面一键安装,没有项目经验,可以拿这个练手
Go - 开箱即用,WEB 界面一键安装,没有项目经验,可以拿这个练手
56 0
|
2月前
|
Shell Go
通过安装GVM 安装GO 操作步骤
通过安装GVM 安装GO 操作步骤
74 0