以前并没有留意用JavaScript管理MongoDB,不过这个还是很有用的功能。特别是可以写一些定时脚本,定期检查数据库,做一些管理任务。
成都创新互联公司是一家集网站建设,敖汉企业网站建设,敖汉品牌网站建设,网站定制,敖汉网站建设报价,网络营销,网络优化,敖汉网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
1. mongo shell中可以直接运行JavaScript代码
比如:
new Date()
ISODate("2013-12-12T07:37:00.074Z")
x = new Date();
ISODate("2013-12-12T07:37:05.724Z")
x.getTime();
1386833825724
var y = Date();
y.getTime()
Thu Dec 12 15:37:26.805 TypeError: Object Thu Dec 12 2013 15:37:21 GMT+0800 (CST) has no method 'getTime'
如果想获得epoch以来的毫秒数,必须用new Date()。
而Date(),似乎就只是一个函数,返回一个字符串而已。没什么大作用,反而容易混淆人的概念。
b. Date对象提供了getTime()
2. 查询语句中,可以用$where operator来执行JavaScript函数, 比如:
db.display.find({$and: [{$where: function() {return new Date().getTime(
3. 可以将代码写到一个js文件中,然后用mongo命令执行
比如:下面将当前时间和last_active_time字段的值的差大于300秒的,状态为offline的document找出来,并显示。
cursor = db.display.find({$and: [{$where: function() {return new Date().getTime() / 1000 - this.last_active_time 300}}, {status: "offline"}]})
while (cursor.hasNext()) {
printjson(cursor.next());
}
然后这样执行:
mongo localhost/mydb test.js
nodejs操作mongodb查询所有数据的方法:
var
mongoclient
=
require('mongodb').mongoclient;
var
db_conn_str
=
'mongodb://localhost:27017/wilsondb1';
var
selectdata
=
function(db,
callback)
{
//连接到表
var
collection
=
db.collection('tb2');
//查询数据
var
wherestr
=
{"name":'wilson001'};
collection.find(wherestr).toarray(function(err,
result)
{
if(err)
{
console.log('error:'+
err);
return;
}
callback(result);
});
}
mongoclient.connect(db_conn_str,
function(err,
db)
{
console.log("连接成功!");
selectdata(db,
function(result)
{
console.log(result);
db.close();
});
});
要实现从一个页面A跳到另一个页面B,js实现就在A的js代码加跳转代码
JS跳转大概有以下几种方式:
第一种:(跳转到b.html)
script language="javascript" type="text/javascript"
window.location.href="b.html";
/script
第二种:(返回上一页面)
script language="javascript"
window.history.back(-1);
/script
第三种:
script language="javascript"
window.navigate("b.html");
/script
第四种:
script language="JavaScript"
self.location=’b.html’;
/script
第五种:
script language="javascript"
top.location=’b.html’;
/script
在MDN上有几篇文章介绍,可以百度一下getUserMedia和AnalyserNode,前者是调用媒体设备的方法后者是声音分析的方法。
MongoDB 将数据记录存储为 BSON类型的 文档(document)。 BSON 是一种二进制数据类型,是json 的一种扩展, bson 支持了更多的数据类型。 下图就是一个document(文档) 示例:
document 的数据结构如下所示:由若干个字段-值对组成,其中字段的值可以是任何 BSON 数据类型 ,包括嵌入式数据结构如 其他文档、数组和文档数组等。
如下申明了一个mydoc 的文档,
字段(field)的命名都是由字符串组成
字段名称有以下几条限制:
对于不同的字段类型的存储操作,字段名称验证规则并不相同。下面总结了不同的插入和更新操作如何处理以美元 ($) 为前缀的字段名称
修改非 $ 前缀的字段
修改非 $ 前缀的最外层字段,通过 literal 实现
使用管道创建一个名为spring2022的新集合,更新 $ 为前缀的 $term 字段
MongoDB 使用点符号来访问数组的元素和访问嵌入文档的字段
要通过从零开始的索引位置指定或访问数组的元素,请将数组名称与点 (.) 和从零开始的索引位置连接起来,并用引号引起来
示例:
要使用点表示法指定或访问嵌入文档的字段,请将嵌入文档名称与点 (.) 和字段名称连接起来,并用引号引起来
示例:
BSON 文档的最大大小为 16 兆字节
最大文档大小有助于确保单个文档不会使用过多的 RAM,或者在传输期间不会使用过多的带宽。为了存储大于最大大小的文档,MongoDB 提供了 GridFS API。
与 JavaScript 对象不同,BSON 文档中的字段是有序的
查询操作时字段顺序:
写操作时字段顺序
对于写入操作,MongoDB 保留文档字段的顺序,但以下情况除外:
在 MongoDB 中,存储在集合中的每个文档都需要一个唯一的 _id 字段作为主键。如果插入的文档省略了 _id 字段,MongoDB 驱动程序会自动为 _id 字段生成一个 ObjectId。 这也适用于通过带有 upsert: true 的更新操作插入的文档
_id 字段具有以下限制:
_id 字段常用值:
string str = "Select * from [User] where UserName='" + username + "'";
这里面的表名或者字段名可能有误(大小写)
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款