UNPKG

mini-db

Version:

A JSON based super lightweight database!!

81 lines (58 loc) 1.55 kB
#mini-db mini-db 提供了类似关系数据库的持久存储能力,以JSON格式将数据保存在磁盘文件中。 在JSON文件中,数据按照一个键(key)下按插入顺序存储多个值(value)的方式扁平存放,示例如下。 ``` { "tablename": [{name:"Jim",age:10}] } ``` ## Install npm install mini-db ## API ### insert ``` var storage = require('mini-db'); var db = storage('./storage/db.json'); db.insert('people', { name: 'Jim', age: 27 },function(err,inserted){ if(!err) console.log(inserted); }); ``` ### select ``` var storage = require('mini-db'); var db = storage('./storage/db.json'); db.select('people').forEach(function(item){ console.log(item.name,item.age); }); ``` ### select(filter) 代码片段中,`$`表示值本身,`#`表示值在数组中的索引 ``` var storage = require('mini-db'); var db = storage('./storage/db.json'); db.select('people', '$.age==27').forEach(function (item) { console.log(item.name + ':' + item.age); }); db.select('people', '#==0',function(err,list){ if(err){return;} list.forEach(function(item){ console.log(item.name,':',item.age); }); }); ``` ### update ``` var storage = require('mini-db'); var db = storage('./storage/db.json'); db.update('people', { name: 'Kim', age: 27 }, '$.age==27',function(err,updated){ if(!err) console.log(updated); }); ``` ### remove ``` var storage = require('mini-db'); var db = storage('./storage/db.json'); db.remove('people', '#==0',function(err,removed){ if(!err) console.log(removed); }); ```