文章分类 Classification
嵌入式文档数据库 LinvoDB
稿件来源: 互联网 撰稿作者: 匿名 发表日期: 2015-03-09 阅读次数: 390 查看权限: 游客查看
LinvoDB 是一个 Node.js/NW.js 的嵌入式数据库引擎,类似 MongoDB 和类 Mongoose 数据库,提供类似的接口,基于 NeDB 开发。
特性:
-
类 MongoDB 的查询引擎
-
基于 LevelUP 的持久化,可选择不同后端
-
NW.js 友好 - JS-only backend is Medea
-
高性能 - steady performance unaffected by DB size - queries are always indexed
-
自动索引
-
Live queries - make the query, get constantly up-to-date results
-
Schemas - built-in schema support
-
Efficient Map / Reduce / Limit
示例代码:
var LinvoDB = require("linvodb3"); var modelName = "doc"; var schema = { }; // Non-strict always, can be left empty var options = { }; // options.filename = "./test.db"; // Path to database - not necessary // options.store = { db: require("medeadown") }; // Options passed to LevelUP constructor var Doc = new LinvoDB(modelName, schema, options); // New model; Doc is the constructor LinvoDB.dbPath // default path where data files are stored for each model LinvoDB.defaults // default options for every model
插入数据:
// Construct a single document and then save it var doc = new Doc({ a: 5, now: new Date(), test: "this is a string" }); doc.b = 13; // you can modify the doc doc.save(function(err) { // Document is saved console.log(doc._id); }); // Insert document(s) // you can use the .insert method to insert one or more documents Doc.insert({ a: 3 }, function (err, newDoc) { console.log(newDoc._id); }); Doc.insert([{ a: 3 }, { a: 42 }], function (err, newDocs) { // Two documents were inserted in the database // newDocs is an array with these documents, augmented with their _id // If there's an unique constraint on 'a', this will fail, and no changes will be made to the DB // err is a 'uniqueViolated' error }); // Save document(s) // save is like an insert, except it allows saving existing document too Doc.save([ doc, { a: 55, test: ".save is handy" } ], function(err, docs) { // docs[0] is doc // docs[1] is newly-inserted document with a=55 and has an assigned _id // Doing that with .insert would throw an uniqueViolated error for _id on doc, because it assumes all documents are new });
更多教程:https://github.com/Ivshti/linvodb3
关键词: 数据库,nodejs 编辑时间: 2015-03-10 16:12:56
0
高兴0
支持0
搞笑0
不解0
谎言0
枪稿0
震惊0
无奈0
无聊0
反对0
愤怒
0%(0)
0%(0)
- 中搜索:嵌入式文档数据库 LinvoDB
- 中搜索:嵌入式文档数据库 LinvoDB
- 暂无评论
文章图片 article Pictrue
网友评论