標籤:
##簡單的mongodb入門命令##
1.show dbs; //查看當前資料庫
2.use databaseName; //選庫
3.show tables/collections; //查看資料庫中有哪些表
4.db.help(); //查看一些對database的操作命令
5.mongodb的庫是隱式建立的,我們可以use一個不存在的庫,然後在改庫下建立collection,即可建立庫;
例如:db.createCollection(‘user‘);
db.user.insert({id:10, name:‘wangwu‘, age:20});
db.user.find();
6.collection允許隱式建立:
db.collectonName.insert(document);
7.刪除collction;
db.collectionName.drop();
8.刪除database;
db.dropDatabase();
##mongodb基本操作##
1.增:insert
db.stu.insert({stu_id:‘001‘, name:‘xiaoqiang‘});
一次性建立多篇文檔:json是一個對象,js中有數組這個概念,我們只需要將多個對象,放到一個數組裡就可以了;
例如:
db.stu.insert([{_id:3, sn:‘003‘, name:‘liuqiang‘},{sn:‘006‘, name:‘zhaoming‘}]);
我們可以寫的任意深;
2.刪:remove
文法:db.collection.remove (查詢運算式,選項);
選項是指:(just_one_line:true/false) 是否只刪除一行,預設為false;
例如:
db.stu.remove({sn:‘001‘}); //刪除st表中sn為001的學生
db.stu.remove({sn:‘001‘, true}); //只刪除一行
注意:
1)查詢運算式依然是json對象;
2)查詢運算式匹配的行將被刪掉;
3)如果不寫查詢運算式,collection中所有的文檔將被刪掉;
3.改:update
文法:db.collection.update(查詢運算式,賦值運算式,新增選項);
改誰--查詢運算式
改成什麼樣--賦值運算式
操作選項--選擇性參數
例如:
db.stu.update({name:‘dalang‘}, {name:‘zhagnqiang‘}); //新文檔直接替換了舊文檔
db.stu.update({name:‘liuwei‘}, {$set:{name:‘yaoming‘}}); //只改某一個列
修改時的賦值運算式:
$set 修改某列的值
$unset 刪除某個列
$rename 重新命名某個列
$inc 增長某個列
$setOnInsert 當upsert為true時,並且發生了insert操作時,可以補充的欄位;
exp:
db.stu.insert({name:‘zhangqiang‘,age16,sex:‘m‘,weight:60});
db.stu.update({$set:{name:wangli},$unset:{age:17},$rename:{sex:‘gender‘}, $inc:{weight:2}});
選擇性參數:
{upsert:false multi:false}
upsert:沒有匹配的行則直接插入該行(如果有查詢到的欄位則修改,否則添加新的資訊)
muiti:修改多行(即使查詢運算式命中多行,也只改一行,如果想改多行,加入這個選項)
exp:
db.stu.update({name:‘zhangqiang‘}, $set:{name:‘lisi‘},{upsert:true});
db.stu.update({name:‘zhangqiang‘}, $set:{name:‘lisi‘,$setOnInsert:{high:180}},{upsert:true}); //加上high屬性
db.stu.update({gender:‘m‘},$set:{genter:‘men‘},{multi:true});
4.查:find,findOne
db.stu.find(); //查詢所有的文檔
db.stu.find({age:18}); //查詢所有文檔中age屬性的列
db.stu.find({}, {age:20}); //查詢所有文檔中age=20的列,且不查詢id屬性
db.stu.find({name:‘zhngsan‘}, {age:1,_id:0}); //查出name是zhangsan 的age都要查出來
mongodb入門很簡單(3)