Prisma
下一代 ORM
-
组成
-
Prisma Client 用于 Node.js 和 TypeScript 的自动生成和类型安全的查询构建器
-
Prisma 迁移:迁移系统
-
Prisma Studio :GUI工具、用于查看和编辑数据库中的数据。
-
-
Pirsma CLI
#生成 prisma 的客户端即 Prisma Client npx prisma generate #数据库推送 如根据模型创建数据库表结构 npx prisma db push #启动Studio,生成浏览器选项卡 npx prisma studio
更多语法:Prisma CLI Command Reference
使用Node.js
调测
// prisma/schema.prisma 文件,创建模型文件
datasource db {
provider = "mysql"
url = "mysql://username:password@hostname:port/db"
// relationMode = "prisma" //是否是prisma模式,是则不创建外键,这里创建外键
}
generator client {
provider = "prisma-client-js"
}
model Role {
id Int @id @default(autoincrement()) //主键,自增长 默认 int 11
code String @unique @db.VarChar(32) //code 标识 32位
label String @db.VarChar(32) //varchar 32
isPublish Boolean @default(true) //默认 true
User User[] //关系
@@map("user_role") //表名
}
model User {
id Int @id @default(autoincrement())
account String @unique @db.VarChar(32) //账户
password String @db.VarChar(32) //密码
roleId Int @map("role_id") //权限id
isPublish Boolean @default(true) @map("is_publish")
createAt DateTime @default(now()) @map("create_at") //创建时间
updateAt DateTime @updatedAt() @map("update_at") //更新时间
role Role @relation(fields: [roleId], references: [id]) //约束关系
@@map("sys_user")
}
#创建、更新数据库
npx prisma db push
# 生成prisma client
npx prisma generate
import { PrismaClient } from '@prisma/client';
async getUser() {
const prisma = new PrismaClient();
await prisma.role.create({
data: {
id: 1,
code: 'admin',
label: '管理员',
},
});
await prisma.user.create({
data: {
account: 'zcookeis',
password: 'zcookies',
roleId: 1,
},
});
return await prisma.user.findMany();
}
- 接口请求
- npx prisma studio
标签:map,Prisma,32,db,prisma,了解,id From: https://www.cnblogs.com/zcookies/p/17303877.html