问题:有支持多种Postgresql模式的Golang ORM库吗?

我正在寻找一个支持使用多个Postgresql 模式的 Golang 的 ORM 库。

这个想法是使用 Postgres 模式](https://influitive.io/our-multi-tenancy-journey-with-postgres-schemas-and-apartment-6ecda151a21f)支持[多租户。 (即在每次请求时,检查应查询哪个租户并在查询前动态设置架构)

有人熟悉这样的图书馆吗?

解答

请注意,到目前为止我只使用了标准库,因此我假设 ORM 的行为方式与database/sql包相同,这很可能是错误的。


我相信任何公开类似于标准的接口的 ORM 一个允许您执行普通的 sql 语句,例如xorm和gorm例如通过设置 do 来促进模式之间的切换search_path.

db.Exec("SET search_path TO tenant_schema_123")

这将设置db 句柄的模式,并且使用该 db 句柄的任何连续查询都对tenant_schema_123进行。

Logo

PostgreSQL社区为您提供最前沿的新闻资讯和知识内容

更多推荐