lowdb 数据库学习笔记

lowdb json文件数据库,基于lodash方式,链式调用;

初始化 (其实也区分客户端和服务端用法)
https://github.com/typicode/lowdb/tree/master/examples

const low = requre('lowdb');
const FileSync = require('lowdb/adapters/FileSync')
const adapter = new FileSync('db.json')
const db = low(adapter)
db.defaults({
    
     posts: [], user: {
    
    name:111}, count: 0 })
  .write()

  • 写&更新 write()
   db.get('posts').push({
    
    id:1,name:'好好学习'}).write()
   db.set('user.name', '好好学习').write()
   db.update('count', n => n+1).write();
   db.get('posts').find({
    
    id:1}).assign({
    
    name:'天天向上'})
   
  • 查询
  db.get('user.name').value();
  db.get('posts[0].name').value();
  db.get('posts').find({
    
    id:1}).value() //返回对象
  db.get('posts').filter({
    
    id:1}).value() //返回数组
  db.get('posts').map("name").value()//获取name列表
  //排序 sortBy , orderBy 
  db.get('posts').filter({
    
    name:'xxxx'}).sortBy('id').value();
  db.get('posts').filter({
    
    name:'xxxx'}).orderBy('id','desc').value()
  //数量
  db.get('posts').size().value()
  • 删除
  db.unset('user.name').write()
  db.get('posts').remove({
    
    id:1}).write()
  //DATA = {users: ["1", "2" "3"]};
  db.get('users').pull("3").write()

猜你喜欢

转载自blog.csdn.net/uk_51/article/details/104535943