在electron中使用sqlite数据库

安装

npm i sqlite3 sqlite -s 
//sqlite3为sqlite数据库驱动
//sqlite库:使用了promise对sqlite3 进行一次封装,比回调方式更符合我们的操作

连接数据库

新建 dbConnect.js 文件

const { open } = require("sqlite");
const sqlite3 = require("sqlite3").verbose();
//dbPath为你想存放数据库文件的目录路径
const connectDb = (dbPath) => {
  return open({
    filename: dbPath,
    driver: sqlite3.Database,
  });
};

module.exports = { connectDb };

连接数据库并建立一个表

//引入
const { connectDb } = require("./db/index");
//自定义数据库路径
const userDbPath = path.join("./db", "user.db");

async createUserInfoTable() {
    const userInfoDb = await connectDb(userDbPath);
    const sql = `create table userInfo (
        id integer primary key autoincrement ,
        username varchar unique not null ,
        password varchar not null ,
        name text not null ,
        remark text 
        )`;
    let res = null;
    try {
      //查询使用userInfoDb.get userInfoDb.all等 更多命令请查阅官方文档
      const runRes = await userInfoDb.run(sql);
      res = {
      	code:200,
      	data:runRes 
      }
    } catch (e) {
      res = {
      	code:500,
      	msg:e
      }
    } finally {
    //最后关闭连接
      await userInfoDb.close();
    }
    return res;
  }

插入数据

const md5 = require("md5-node");
async inertUserInfoTable(data = {}) {
    const userInfoDb = await connectDb(userDbPath);
    const sql = `insert into userInfo (username,password,name,remark) values (:username,:password,:name,:remark)`;
    let res = null;
    try {
      const v = {
      	":username": data[":username"],
        ":name": data[":name"],
        ":remark": data[":password"],
        ":password": md5(data[":password"]),
      };
      const runRes = await userInfoDb.run(sql, v);
       res = {
      	code:200,
      	data:runRes 
      }
    } catch (e) {
      res = {
      	code:500,
      	msg:e
      }
    } finally {
      await userInfoDb.close();
    }
    return res;
  }

结果

在这里插入图片描述

最后

本文章仅仅介绍如何在electron中使用sqlite数据库,sqlite的sql语句不做解释。

  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值