1

我已经开始学习 GraphQL,发现 GraphQL 是一种很棒的查询语言。但是我想知道我是否可以将 GraphQL 用于现有数据库,例如 mongoDB 或 mySQL。也请解释一下棱镜。prisma 是云数据库还是什么?

4

2 回答 2

2

是的,您可以将它与现有数据库一起使用。

Prisma 是一个使用 GraphQL 服务器构建的 ORM 层,它抽象出数据库并让您使用 GraphQL 查询与数据库进行交互。它目前支持 MySQL、MongoDB、AWS RDS 和 PostgreSQL。它不是数据库,但您可以将其托管在云上。

通常,您需要另一个 GraphQL 服务器,其中的解析器将调用 Prisma 的 GraphQL 服务器。此 GraphQL 服务器是客户端调用的服务器。

于 2019-01-29T15:20:41.647 回答
1

正如在上一篇文章中提到的那样——是的,你可以。

举个例子,如果你的后端应用程序写在 .NET 堆栈上——你可能会使用,猜猜两个,真正测试过的主要库,并且人们在实际项目中使用它(谷歌 GraphQL.Net 和第二个库应该拼写几乎相同)

但是,这两个库都只为您提供 graphql 查询和描述方案的处理(“accounts {id name}”意味着您应该定义从 db 或其他数据源返回数据的解析器)

大多数人使用 EF(EntityFramework)作为 GraphQL 和 db 之间的数据适配器。但是,从我的角度来看,它是没有用的,特别是如果我们正在谈论从 db 获取数据并且可能是数千个请求。我们实现了基于轻量级数据库库的组件(适用于几乎所有流行的数据库,如 MSSQL、Postgresql、MySQL 或 Elasticsearch),能够非常轻松地配置 GraphQL 方案,并提供排序、分页和复杂过滤等主要功能。

于 2019-02-26T14:50:51.597 回答