Chinaunix首页 | 论坛 | 博客
  • 博客访问: 138879
  • 博文数量: 19
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 350
  • 用 户 组: 普通用户
  • 注册时间: 2005-11-26 22:57
文章分类

全部博文(19)

文章存档

2014年(3)

2011年(1)

2009年(5)

2008年(10)

我的朋友
最近访客

分类: NOSQL

2014-02-14 16:14:00

mongodb学习:
##mongodb基础
##数据库常用命令
##用户相关
##修改、添加、删除集合数据
##条件操作符
##创建表


-----------------------------------------------------------------------------
##mongodb基础
MongoDB由databases(相当于Mysql的数据库)组成,
databases由collections组成(collection相当于Mysql的表)
collections由documents组成(document相当于Mysql的行),
documents由fields组成(fields相当于Mysql的列)


在mongodb中使用一种类json的bson存储数据。bson数据可以理解为在json的基础上添加了一些json中没有的数据类型。


mongodb是异步写数据


MongoDB没有创建数据库的命令,但有类似的命令。
如:如果你想创建一个“myTest”的数据库,先运行use myTest命令,之后就做一些操作(如:db.createCollection('user')),这样就可以创建一个名叫“myTest”的数据库。


-----------------------------------------------------------------------------
##数据库常用命令


输入help可以看到基本操作命令:


Help查看命令提示
help
db.help();
db.yourColl.help();
db.youColl.find().help();
rs.help();


切换/创建数据库
use yourDB;  当创建一个集合(table)的时候会自动创建当前数据库


查询所有数据库
show dbs;


查看当前使用的数据库
db; 
db.getName();
db和getName方法是一样的效果,都可以查询当前使用的数据库


显示当前db状态
db.stats();


创建一个聚集集合(table)
db.createCollection(“collName”, {size: 20, capped: 5, max: 100});
db.createCollection(“mytb”);


得到指定名称的聚集集合(table)
db.getCollection("account");


得到当前db的所有聚集集合
db.getCollectionNames();


显示当前db所有聚集索引的状态
db.printCollectionStats();


当前db版本
db.version();


查看当前db的链接机器地址
db.getMongo();


删除当前使用数据库
db.dropDatabase();


修复当前数据库
db.repairDatabase();


从指定主机上克隆数据库
db.cloneDatabase(“127.0.0.1”); 将指定机器上的数据库的数据克隆到当前数据库


从指定的机器上复制指定数据库数据到某个数据库
db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据复制到temp数据库中


在表中增加一条数据:
db.mytb.Save({id:1,name:"tester"});


-----------------------------------------------------------------------------
##用户相关
添加一个用户
db.addUser("name");
db.addUser("userName", "pwd123", true); 添加用户、设置密码、是否只读


数据库认证、安全模式
db.auth("userName", "123123");


显示当前所有用户
show users;


删除用户
db.removeUser("userName");


-----------------------------------------------------------------------------
##修改、添加、删除集合数据
添加
db.users.save({name: ‘zhangsan’, age: 25, sex: true});
添加的数据的数据列,没有固定,根据添加的数据为准
 
修改
db.users.update({age: 25}, {$set: {name: 'changeName'}}, false, true);
相当于:update users set name = ‘changeName’ where age = 25;
 
db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true);
相当于:update users set age = age + 50 where name = ‘Lisi’;
 
db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true);
相当于:update users set age = age + 50, name = ‘hoho’ where name = ‘Lisi’;
 
删除
db.users.remove({age: 132});
 
查询修改删除
db.users.findAndModify({
    query: {age: {$gte: 25}}, 
    sort: {age: -1}, 
    update: {$set: {name: 'a2'}, $inc: {age: 2}},
    remove: true
});
 
db.runCommand({ findandmodify : "users", 
    query: {age: {$gte: 25}}, 
    sort: {age: -1}, 
    update: {$set: {name: 'a2'}, $inc: {age: 2}},
    remove: true
});


-----------------------------------------------------------------------------
##条件操作符
(>) 大于 - $gt 
(<) 小于 - $lt 
(>=) 大于等于 - $gte 
(<= ) 小于等于 - $lte 




-----------------------------------------------------------------------------
#####################################
##创建表
use mydb;
db.addUser("snow","snow");
db.auth("snow","snow");
db.createCollection("test");
show collections;
db.test.save({id:1,name:"tester"});
db.test.find();
#####################################
use mydb;
db.mydb.insert(document);
document=({"user_id" : "ABCDBWN","password" :"ABCDBWN" ,"date_of_join" :"15/10/2010" ,"education" :"B.C.A." , "profession" : "DEVELOPER","interest" :"MUSIC","community_name" :["MODERN MUSIC", "CLASSICALMUSIC","WESTERN MUSIC"],"community_moder_id" : ["MR. BBB","MR. JJJ","MRMMM"],"community_members" : [500,200,1500],"friends_id" :["MMM123","NNN123","OOO123"],"ban_friends_id" :["BAN123","BAN456","BAN789"]});
#####################################


-----------------------------------------------------------------------------








阅读(1048) | 评论(0) | 转发(0) |
0

上一篇:windows 上安装mongodb

下一篇:没有了

给主人留下些什么吧!~~