小码哥的IT人生

首页 > JS > nodejs

node.js实例:安装、操作sqlite 数据库示例【创建、增删改查】

nodejs 2023-08-13 12:27:33小码哥的IT人生shichen

1. 安装sqlite3模块

$ npm install sqlite3
# 或者
$ yarn add sqlite3

2. 创建数据库(不存在的情况下创建)

const sqlite3 = require('sqlite3').verbose();
var md5 = require('md5');
//创建连接
const db = new sqlite3.Database('mydb.db');

//创建表格
db.run(`
CREATE TABLE IF NOT EXISTS users(
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    name TEXT,
    password TEXT
)
`)

3.增删改查实例

①. 添加数据:

//插入数据函数
function addUserInfo(addinfo){
    var name = addinfo.name;
    var pwd = addinfo.pwd;
    db.run('INSERT INTO users (name,password) values(?,?)',[name,md5(pwd)]);
}

//测试添加数据
var adduserinfo = {
    "name":"李四",
    "pwd":"111111"
}

//执行添加数据操作
addUserInfo(adduserinfo);

②. 删除数据:

//删除数据
function delUser(id){
    db.run('delete from users where id = ?',id,(err)=>{
        if(err){
            console.log('删除失败!',err);
        }else{
            console.log("删除成功!")
        }
    })
}

//执行删除数据
delUser('1');

③. 更新数据:

// 修改数据
function udpUserInfo(udpinfo){
    var id = udpinfo.id;
    var name = udpinfo.name;
    var pwd = md5(udpinfo.pwd);
    db.run('update users set name = $name , password = $pwd where id = $id',{
        $name:name,
        $pwd:pwd,
        $id:id
    },(err)=>{
        if(err){
            console.log('数据更新错误===>',err);
        }
    })
}

// 更新数据
var udpuserinfo = {
    "id":"1",
    "name":"王五",
    "pwd":"111111"
}

// 执行更新数据
udpUserInfo(udpuserinfo)

④. 查询数据:

//读取数据
function readUser(){
    db.all('select * from users',(err,rows)=>{
        if(err){
            console.log(err)
        }else{
            console.log(rows);
        }
    })
}

//读取一条数据【id为需要查询的id号】
function readOneUser(id){
    db.get('select id,name,password from users where id = ?',id,(err,rows)=>{
        if(err){
            console.log('读取一条数据错误===>',err)
        }else{
            console.log(rows)
        }
    })
}

⑤. 关闭数据库:

//关闭数据库连接
db.close((err)=>{
    if(err){
        console.log(err)
    }else{
        console.log('关闭数据库success')
    }
})

附:官方npm参考地址:

https://www.npmjs.com/package/sqlite3

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024