4th Day

Mongo的命令

  • 集合:表格
  • 文档:行
  • 字段:列
1
2
3
4
5
6
7
8
9
10
11
12
13
db 显示当前在哪个数据库里
show dbs 显示所有数据库
show tables 显示当前数据库里的表
use + dbname 进入数据库
db.dropDatabase 删除当前数据库
db.dbname.insert({ 内容 }) 在数据库里创建一个dbname表,并存入数据
db.dbname.drop() 删除dbname的表
db.dbname.find() 查看dbname表里的所有文档的信息
db.dbname.update({原本的信息},{$set:{更新的信息}}) 更新dbname表里的信息,选填三个信息,1:如果匹配不上信息,是否创建一个新的,默认为false;2:若匹配上了多个信息,是否更改所有,默认是false;3:抛出异常的级别
db.dbname.update({属性:{$ gt:判断条件}},{$set:{更新的信息}},false,true) 更新dbname表里的该属性所有信息
db.dbname.remove({匹配的属性}) 选填,不填删除所有配对的信息,填1删除找到的第一条信息
db.dbname.remove({属性:{$ gt:判断条件}} 删除所有该属性
db.DB.find({匹配属性,匹配的属性}) 查询当前匹配条件信息
  • 可以用use + dbname 新创建一个数据库,但不会马上显示出来;
  • MongoDB会自己创建数据库和集合,不用手动创建

MongoDB数据库的增删查改

1
2
3
4
collection.insert(data, function(err, result){ })
collection.find(whereStr).toArray(function(err, result){ })
collection.update(whereStr,updateStr, function(err, result){ })
collection.remove(whereStr, function(err, result){ })

增添

1
2
var MongoClient = require('mongodb').MongoClient;
var DB_CONN_STR ='mongodb://localhost:27017/xxxx';
  • 为连接数据库加载模块,xxx为数据库的名字
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var insertData = function(db, callback){
//连接到表 site
var collection = db.collection('site');
//插入数据
var data = [ 可以是数值;可以是一列数组,数组用{ } 的形式存在数据];
collection.insert(data, function(err, result) {
if(err)
{
console.log('Error:'+ err);
return;
}
callback(result);
});
}
}
  • collection.insert 是套路,把数据丢进去,设置一个回调函数,里面的代码在增删改查中基本一样,变的是丢进去的数据
1
2
3
4
5
6
7
MongoClient.connect(DB_CONN_STR, function(err, db) {
console.log("连接成功!");
insertData(db, function(result) {
console.log(result);
db.close();
});
});
  • 对数据库操作,打印结果并关闭数据库

查询

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var selectData = function(db, callback) {
//连接到xxx表
var collection = db.collection('xxx');
//查询数据
var whereStr = {"name":'xxxx'};
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();
});
});

更新

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var updateData = function(db, callback) {
//连接到表
var collection = db.collection('xxx');
//更新数据
var whereStr = { 匹配属性 };
var updateStr = {$set: { 更新属性 }};
collection.update(whereStr,updateStr, function(err, result) {
if(err)
{
console.log('Error:'+ err);
return;
}
callback(result);
});

删除

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var delData = function(db, callback) {
//连接到表
var collection = db.collection('xxx');
//删除数据
var whereStr = { 匹配属性 };
collection.remove(whereStr, function(err, result) {
if(err)
{
console.log('Error:'+ err);
return;
}
callback(result);
});
}