首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Go语言和PostgreSQL 9.4

Go语言和PostgreSQL 9.4
EN

Stack Overflow用户
提问于 2015-04-15 01:46:24
回答 2查看 162关注 0票数 0

有没有支持PostgreSQL版本9.4的Go语言的PostgreSQL库?JSON9.4支持PostgreSQL数据类型,想知道它是否可以与Go语言一起使用?

谢谢。

EN

回答 2

Stack Overflow用户

发布于 2015-04-15 02:07:53

是的,go pq library应该支持JSONv9.4,并且它基本支持PostgreSQL类型作为字符串(看起来像是added in v9.2)。

代码语言:javascript
复制
// CREATE TABLE foo (id SERIAL PRIMARY KEY, stuff json);
// INSERT INTO foo (stuff) VALUES ('{"x":123}');

type Foo struct {
  Id    int,
  Stuff string,
}

rows, err := db.Query("SELECT * FROM foo LIMIT 1") // TODO: handle error
defer rows.Close()
for rows.Next() {
  foo := Foo{}
  err = rows.Scan(&foo.Id, &foo.Stuff) // TODO: handle error
  # main.Foo{Id:1, Stuff:"{\"x\":123}"}
}

您可以对JSON字符串进行后处理,也可以使用自定义的"Scan“方法创建自定义类型:

代码语言:javascript
复制
type Foo struct {
  Id    int,
  Stuff MyStuff,
}

func (e *MyStuff) Scan(value interface{}) error {
  // Value should be a []byte of the JSON string.
  // Do whatever you want with it here...
}
票数 2
EN

Stack Overflow用户

发布于 2015-04-15 01:54:55

我使用jmoiron/sqlx。对于任何不常见的数据类型,您可以实现valuerscanner接口。我已经使用这个包为Postgis的地理点做了这件事。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29634071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档