日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

嵌入式nosql php,NoSQL 嵌入式数据库NeDB示例

發(fā)布時(shí)間:2025/3/12 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 嵌入式nosql php,NoSQL 嵌入式数据库NeDB示例 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在nw.js一直無法配置sqlite3數(shù)據(jù)庫,所以一直使用web sql數(shù)據(jù)庫,不過還原之類的操作異常麻煩,打算使用NeDB數(shù)據(jù)庫,非關(guān)系型數(shù)據(jù)庫的擴(kuò)展性很適合數(shù)據(jù)結(jié)構(gòu)不確定性的nw.js項(xiàng)目。

在Capacitor或cordova打包APP使用需引用:npm i cordova-plugin-file (操作系統(tǒng)文件權(quán)限)var db = new Nedb({ }); (注意區(qū)分大小寫)

NoSQL 嵌入式數(shù)據(jù)庫 NeDB

新增

新增2

修改

刪除

壓縮數(shù)據(jù)

log

var NeDB = require('nedb')

var db = new NeDB({

filename: 'flashme-data.nedb',

autoload: true,//加載至內(nèi)存

timestampData: true,//自動(dòng)時(shí)間戳

})

var doc = {

hello: 'flashme'

, n: 5

, today: new Date()

, nedbIsAwesome: true

, notthere: null

, content: 'hi\n"中文"'

, fruits: ['apple', 'orange', 'pear']

, infos: { name: 'nedb' }

};

function add() {

db.insert(doc, function (err, newDoc) {

console.log(err, newDoc);

});

}

function add2() {

db.insert([{ a: 5, hello: "修改" }, { a: 42 }], function (err, newDocs) {

});

}

// 示例2: {field: {$op: value}} ($op代表任意比較運(yùn)算符)

// $lt, $lte: 小于,小于等于

// $gt, $gte: 大于,大于等于

// $in: 屬于

// $ne, $nin: 不等于,不屬于

// $exists: 取值為true或者false,用于檢測(cè)文檔是否具有某一字段

// $regex: 檢測(cè)字符串是否與正則表達(dá)式相匹配

// $lt, $lte, $gt and $gte 只能用于數(shù)字和字符串類型

function list() {

//包含查詢

db.find({ hello: { $exists: 'flash' } }, function (err, docs) {

console.log(docs);

});

//分頁

db.find({}).sort({ _id: 1 }).skip(1).limit(5).exec(function (err, docs) {

console.log("分頁:", docs)

});

// 反向排序

db.find({}).sort({ _id: -1 }).skip(1).limit(5).exec(function (err, docs) {

console.log("倒序:", docs)

});

}

//可用的修飾符有$set(改變字段值), $unset(刪除某一字段), $inc(增加某一字段), $min/$max(改變字段值,傳入值需要小于/大于當(dāng)前值),

//還有一些用在數(shù)組上的修飾符,$push, $pop, $addTopSet, $pull, $each, $slice

function edit() {

db.update({ hello: '修改' }, { $set: { n: 999 } }, { multi: true }, function (err, numReplaced) {

console.log("edit -> numReplaced", numReplaced)

// db.persistence.compactDatafile();//壓縮數(shù)據(jù)

});

}

function del() {

// 刪除多條記錄

db.remove({ a: 42 }, { multi: true }, function (err, numRemoved) {

console.log("del -> numRemoved", numRemoved)

});

}

//增刪改操作都是在數(shù)據(jù)尾部形成記錄,執(zhí)行數(shù)據(jù)壓縮才會(huì)將數(shù)據(jù)文件里轉(zhuǎn)為最終態(tài)

function datafile() {

db.persistence.compactDatafile();//壓縮數(shù)據(jù)

}

總結(jié)

以上是生活随笔為你收集整理的嵌入式nosql php,NoSQL 嵌入式数据库NeDB示例的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。