GraphQL是ORM吗?

GraphQL是ORM吗?,orm,graphql,Orm,Graphql,GraphQL是ORM吗?好像是的。在一天结束时,它需要查询数据库中的信息。您需要给它一个模式(就像ORM一样)。据我所知,在前端,您可以传递所需的细节,而后端的GraphQL将提供您所需的信息 我所看到的与Sequelize或ActiveRecord等传统ORM的唯一区别是,GraphQL只提供您想要的,这使它非常有吸引力和灵活性。不过我怀疑,无论引擎盖下发生了什么,都可能会给您留下一些低效的查询(在ORMs中很常见)。那么GraphQL仅仅是一种ORM吗?它可以为您的请求和接收提供100%的

GraphQL是ORM吗?好像是的。在一天结束时,它需要查询数据库中的信息。您需要给它一个模式(就像ORM一样)。据我所知,在前端,您可以传递所需的细节,而后端的GraphQL将提供您所需的信息


我所看到的与Sequelize或ActiveRecord等传统ORM的唯一区别是,GraphQL只提供您想要的,这使它非常有吸引力和灵活性。不过我怀疑,无论引擎盖下发生了什么,都可能会给您留下一些低效的查询(在ORMs中很常见)。那么GraphQL仅仅是一种ORM吗?它可以为您的请求和接收提供100%的灵活性?

GraphQL不是ORM,因为它不理解DBs的概念。它只是从“数据源”获取数据,而“数据源”可能是静态的,也可能是从文件等获取数据。当您将数据源指向数据源时,它也不知道如何获取数据。您必须编写解析器函数,告诉DB如何查找每个字段的值


一些gem/包将简化其中的一些功能。其中一些可能是或可能成为ORMs,但GraphQL本身完全不依赖于平台/数据源。

我建议您使用Prisma。Prisma是一个性能良好的开源GraphQL ORM层,在GraphQL服务器中起着重要作用。它将数据库转换为GraphQL API,解析程序可以通过GraphQL绑定使用它。

不,不是。只有GraphQL,我们无法轻松访问数据库,因为发送查询所需的语言没有被ORM映射

ORM使访问数据库变得容易,这在某种意义上更像是创建了一个虚拟数据库,我们的编程语言可以轻松地访问它。然后GraphQL将其查询发送到该虚拟数据库中