Electron中使用Prisma(以SQLite为例)

embedded/2024/10/18 18:27:18/

1、安装 Prisma

打开终端,执行以下命令安装 Prisma CLI:

npm install prisma -g

2、初始化 Prisma 项目

在工作目录中执行以下命令来初始化一个新的 Prisma 项目:

prisma init

这将创建一个新的文件夹,包含了必要的文件和目录结构。

3、配置 SQLite

打开 prisma/schema.prisma 文件,将数据库引擎设置为 SQLite:

javascript">generator client {provider = "prisma-client-js"
}datasource db {provider = "sqlite"url      = env("DATABASE_URL")
}

然后执行以下命令来生成数据库模型和客户端代码:

prisma generate

4、创建数据库模型

prisma/schema.prisma 文件中,通过定义模型来创建数据库表。例如,我们可以创建一个名为 User 的模型:

javascript">model User {id    Int     @id @default(autoincrement())email String  @uniquename  String?
}

然后再次执行 prisma generate 命令来更新数据库模型和客户端代码。
或者使用 prisma migrate dev

5、使用 Prisma 客户端代码

可以使用 Prisma 客户端代码来操作数据库。在 Electron 中,我们可以在主进程或渲染进程中使用 Prisma。

以下是一个在渲染进程中使用 Prisma 查询数据的示例:

javascript">const { PrismaClient } = require('@prisma/client')const prisma = new PrismaClient()app.on('ready', async () => {console.log('ready');const users: User[] = await prisma.user.findMany();console.log('User Table');console.log(users);
});

在上面的示例中,我们首先引入了 Prisma 客户端模块,并创建了一个 Prisma 客户端实例。然后,我们定义了一个异步函数 getUsers(),用来查询数据库中的所有用户数据并打印到控制台。


http://www.ppmy.cn/embedded/22634.html

相关文章

Springboot自定义注解+aop实现redis自动清除缓存功能

假如我们是一个商家,我们在管理端 设置好菜品之后,每次不同的用户访问我们的菜品,都要查询数据库,当访问者多的时候,会造成数据库的卡顿,所以使用redis进行缓存,这样只需要读取一次数据库&#…

Crowd counting 系列NO.1—CSRNet

CSRNet:Dilated Convolutional Neural Networks for Understanding the Highly Congested Scenes 声明:博客是用latex写的,所以直接用图片来展示吧,效果是一样的。下载资源网上都很容易搜到,如需下载资源,请留言。

Oracle 11g 生产库因密码过期修改密码产生library cache lock等待事件导致用户hang问题分析及处理

一、问题描述 这个五一假日,旅游景点真的是人山人海,不是看景而是看人。于是,索性假日就不去景点,就在家附近逛逛。 假日的一天中午,在家附近上场,接到同事打来电话,有个国外点的生产库应用无法…

如何解决 IntelliJ IDEA 2024 启动总闪退问题?一站式解决方案!

🧠 如何解决 IntelliJ IDEA 2024 启动总闪退问题?一站式解决方案! 文章目录 🧠 如何解决 IntelliJ IDEA 2024 启动总闪退问题?一站式解决方案!摘要引言正文一级标题:检查和优化内存设置一级标题…

场外个股期权开户新规及操作方法

场外个股期权开户新规 场外个股期权开户新规主要涉及对投资者资产实力、专业知识、风险承受能力和诚信记录的要求。以下是根据最新规定总结的关键要点: 来源/:股指研究院 资产门槛:投资者需具备一定的资产实力,确保在申请开户前…

使用 Python 和 Keras 实现卷积神经网络

MNIST数据集 我们将使用另一个著名的数据集——MNIST 数据集。该数据集扩展了其前身 NIST,具有 60,000 个样本的训练集和 10,000 个手写数字图像的测试集。所有数字都已标准化大小并居中。图像的大小也是固定的,因此预处理图像数据被最小化。这就是为什么这个数据集如此受欢…

数据挖掘实验一

一、实验环境及背景 使用软件: Anaconda3 Jupyter Notebook 实验内容: 1.使用Tushare或者其他手段获取任意两支股票近三个月的交易数据。做出收盘价的变动图像。2.使用Pandas_datareader获取世界银行数据库中美国(USA)、瑞典&…

基于微信小程序的旅游系统的设计与实现

基于微信小程序的旅游系统的设计与实现 Design and Implementation of a Tourism System based on WeChat Mini Program 完整下载链接:基于微信小程序的旅游系统的设计与实现 文章目录 基于微信小程序的旅游系统的设计与实现摘要第一章 绪论1.1 研究背景与意义1.2 国内外研究…