Prisma1.0简介

prisma代替的传统的ORM,简化了数据库工作流程,有以下三个特性

  • Access: 使用自带生成的Prisma客户端能进行类型安全的数据库访问,支持语言:Javascript typescript go;支持数据库:MySQL, PostgreSQL, MongoDB
  • Migrate:数据库可以迁移
  • Manage: 可利用Prisma Admin进行可视化管理
    作用
  • 构建graphqls 服务器 完全支持Apollo 生态体系
  • 能构建rest gRPC风格api
  • 非常灵活的api,用于处理关系数据和事务

prisma的一些重要概念

datamodal

定义和特性

datamodel 是数据模型,会根据这个生成数据表,并且也是prisma clinet api的基础,对于数据模型定义的每个模型。都会为该模型生成Prisma客户端操作,包括:

  • 读取一条线记录
  • 读取多条记录
  • 写入记录
  • 更新记录
  • 删除记录
  • 判断记录是否存在
  • 在模型的任何记录上执行写操作时,接收实时更新
语法

datamodal使用的是Graphql SDL语法,在deploy.yml中定义路径

下面是例子:

type User {id: ID! @id   username: String! @unique   email: String! @uniquepassword: String!createdAt: DateTime! @createdAtupdatedAt: DateTime! @updatedAtrole: Role! @relation(link: INLINE)posts: [Post!]!
}type Post {id: ID! @idtitle: String!content: Stringpublic: Boolean! @default(value: false)createdAt: DateTime! @createdAtupdatedAt: DateTime! @updatedAtauthor: User @relation(link: INLINE)type: Type!
}type Role {id: ID! @idname: String! @uniquecreateAt: DateTime! @createdAtupdateAt: DateTime! @updatedAtusers: [User!]!
}type Type {id: ID! @idname: String! @uniquecreateAt: DateTime! @createdAtupdateAt: DateTime! @updatedAtposts: [Post]
}

prisma server

prisma server:位于数据库顶部的独立基础结构组件

prisma client

prisma client是自动生成的库,它允许连接到prisma server ,允许读写数据库,和访问数据

Prisma1.0 实践

起步

  1. 安装graphql cli
yarn global add prisma
  1. 依赖docker 安装docker
  2. prisma init 初始化项目
prisma init 项目名称

根据提示选择,可以选择已经存在的数据或者新建数据库,也可以选择生成的client客户端类型
会生成文件目录如下
-generated / prisma-client 这里面是prisma的客户端,是根据datamodal自动生成的prisma 的一些interface
-datamodel.prisma
-docker-compose.yml
-prisma.yml

4.进入项目根目录 构建docker镜像

docker compose up  --build -d

如果选择的是新建数据库,这里会起包括一个数据库容器和一个prism server
如下:

5. prisma deploy 部署datamodel
6. 浏览器输入 localhost:4466 会看到graphql playground
7. 浏览器输入 localhost:4466/_admin 会看到Prisma Admin管理界面(也可执行命令prism admin打开)

prisma1.0实践相关推荐

  1. ts引入公共方法_vue3+TS+ant2.0 实践指南

    (内容全部手打,错别字见谅) 刚刚做完一个小项目,用时大概一周左右,我迫不及待的用上了vue3,开发体验还是非常的好.自从有了组合API,逻辑代码也可以复用了,大家可以开始写祖传的代码了. 一. 搭建 ...

  2. vue2实践揭秘pdf_《Vue2.0 实践揭秘》终于出版啦!

    不知不觉间在园子开博都两年多了,最近一些园友问最近去哪了为何都没有新的文章了.最近确实发生了很多的事,一是忙工作二就是忙着写书.这还得多些园子的小编,自两年前发表的"架构师修炼"系 ...

  3. Atlas 2.1.0 实践之编译Atlas-Hive

    Atlas 2.1.0 实践之编译Atlas-Hive 问题前景: Hive 2.2.0以下的低版本存在bug,字段级的血缘数据不能自动生成,需升级hive版本到2.2.0及以上才能正常生成字段级的血 ...

  4. OAuth1.0实践之foursquare客户端同步到饭否

    上回说完了<OAuth2.0实践之foursquare客户端登录>这回还是要回来说OAuth1.0. 还是我写的那个foursquare的web客户端程序.其中加上了同步到饭否的功能,原来 ...

  5. Vue3.0实践:使用Vue3.0做JSX(TSX)风格的组件开发

    前言 我日常工作都是使用React来做开发,但是我对React一直不是很满意,特别是在推出React Hooks以后. 不可否认React Hooks极大地方便了开发者,但是它又有非常多反直觉的地方, ...

  6. vue3.0实践之写tsx语法实例

    00:下载 yarn add @vitejs/plugin-vue-jsx -D 01:引入 vite.config.ts 1 2 3 4 5 6 7 8 import { defineConfig ...

  7. MQTT协议详解及v5.0实践——实践类

    本文主要包含了以下内容: 1)MQTT协议演进历史及协议特点,总结和分析MQTT协议族的优缺点,分析和总结了为什么相比于其他协议,MQTT适合IoT,业内支持现状等. 2)阿里云IoT MQTT3和5 ...

  8. PowerShell 2.0 实践(十二)管理 SQL Server 2008 R2(1)

    DBA可以使用的工具很多,对于SQL Server来说,有查询分析器.事件探查器.命令行工具等,其中SQL语句是重中之重,但是PowerShell的出现使得DBA又多了一种选择. 测试脚本下载 本系列 ...

  9. Symfony3.0 实践教程 (三) 安装与配置Symfony

    安装与配置Symfony 原文 http://symfony.com/doc/current/book/inst... 通过 Composer 来创建一个 Symfony 应用 安装好 compose ...

  10. hadoop2.6.0实践:002 检查伪分布式环境搭建

    1.检查网络配置 [root@hadoop-master ~]# cat /etc/sysconfig/network NETWORKING=yes HOSTNAME=hadoop-master GA ...

最新文章

  1. 1.3 图像边缘检测edge函数的用法
  2. 汉诺塔--(数据结构)
  3. MongoDB shell 操作
  4. 做好的html 保存不了,有些网页不能保存,或者保存后没有内容,怎么办?
  5. jar 工程我怎么在网页上url访问某一个方法_搜狗用这个骚技术,把百度逼上了绝路。。。...
  6. 点击文字,把input type=radio也选中
  7. gj4 深入类和对象
  8. 演讲者模式投影到幕布也看到备注_家用投影幕布怎么选?(看这一篇就明白了)...
  9. 网易面经(Java开发)
  10. windous和Linux桌面版的比较
  11. 3726.调整数组-AcWing题库
  12. ocr图像识别引擎_CycleGAN作为OCR图像的去噪引擎
  13. let var const的区别
  14. 数据库原理(上)--收集得空看
  15. python输入一个正整数_Python题目解答:输入一个整数N,输出N的所有最小因子
  16. STM32 定时器的简单应用 1ms中断代码
  17. Qgis教程07:矢量数据属性编辑
  18. 海淀区第九届单片机竞赛获奖名单_2014年北京市中小学生单片机获奖名单-获奖名单...
  19. Platform 概述
  20. FPGA学习笔记(十二)IP核之FIFO的学习总结

热门文章

  1. (十三)ATP应用测试平台——springboot集成kafka案例实战
  2. 新能源车牌识别系统的设计与实现
  3. IDEA的TODO的使用
  4. Liunx文件常用命令总结
  5. UG/NX二次开发Siemens官方NXOPEN实例解析—2.3 Selection_UIStyler(边倒角)
  6. Beautiful Soup的安装
  7. 「津津乐道播客」#301 这是一期价值3000元的当代社畜科学点餐指南
  8. 中国天气网 天气预报API 国家气象局 根据城市名称抓取城市ID,XML格式、JSON格式、图片代码
  9. hive查看表中列的信息命令_Linux查看硬件信息之dmidecode命令详解
  10. 苹果CEO库克的逆袭之路