- 論壇徽章:
- 0
|
安裝好Sequoiadb后,進(jìn)行簡單的創(chuàng)建、刪除、插入,更新操作。
運(yùn)行sdb,Sequoiadb默認(rèn)安裝在/opt/sequoiadb目錄中。
(1) 啟動(dòng)協(xié)調(diào)節(jié)點(diǎn)上Sequoiadbshell控制臺(tái)
/opt/sequoiadb/bin/sdb
(2) 連接到協(xié)調(diào)節(jié)點(diǎn)
>var db = new Sdb("localhost",11810)
(3) 創(chuàng)建集合空間
>db.createCS("foo")
(4) 在集合空間里創(chuàng)建集合
>db.foo.createCL("bar")
(5) 插入記錄
insert()是向sequoiadb集合中插入記錄的主要方法,它有以下語法:
db.collectionspace.collection.insert(<doc|docs>,[flag])
db.foo.bar.insert(
{
_id:1,
age:22,
name:{fist:"Jhon",last:"Black"},
phone:[18525802580,13814701470],
}
)
使用find()確認(rèn)是否插入。
db.foo.bar.find()
e1.PNG (3.21 KB, 下載次數(shù): 71)
下載附件
2014-07-31 16:03 上傳
如果_id字段未指定,insert()會(huì)向文檔添加_id字段并生成唯一$oid值。
e2.PNG (3.39 KB, 下載次數(shù): 80)
下載附件
2014-07-31 16:03 上傳
也可以同時(shí)插入多條記錄
db.foo.bar.insert([{name:”Mike”,age:15},{_id:20,name:”John”,age:25,phone:123}])
(6)讀取記錄
我們使用find方法讀取sequoiadb中的記錄。find方法是從集合中選擇記錄的主要方法,它返回一個(gè)包含很多記錄的游標(biāo)。它的語法結(jié)構(gòu)如下:
db.collectionspace.collection.find([cond],[sel])
在SQL中對應(yīng)的操作:find()的方法與SELECT語句相似:
. [cond]參數(shù)對應(yīng)WHERE語句
. [sel]參數(shù)對應(yīng)從結(jié)果集中選擇的字段列表
返回集合bar中age大于20的記錄
db.foo.bar.find({age:{$gt:20}})
嵌套BSON對相匹配查詢
e3.PNG (3.47 KB, 下載次數(shù): 81)
下載附件
2014-07-31 16:03 上傳
如果指定find方法的sel參數(shù),那么只返回指定的sel參數(shù)內(nèi)的字段名。下面的操作返回記錄的name字段:
db.foo.bar.find(null,{name:""})
e4.PNG (2.64 KB, 下載次數(shù): 90)
下載附件
2014-07-31 16:03 上傳
(7)更新記錄
update()方法是修改集合中記錄的主要方法,它的語法結(jié)構(gòu)為:
db.collectionspace.collection.update(<rule>,[cond],[hint])
在SQL中對應(yīng)的操作:update()的方法與update...set語句相似:
. <rule>參數(shù)對應(yīng)set語句
. [cond]參數(shù)對應(yīng)where語句
. [hint]參數(shù)是對應(yīng)索引表里的名稱
使用$set更新記錄字段的值。下面的操作修改集合bar中符合條件_id字段值等于1的記錄,使用$set修改name字段的嵌套元素last字段的值,將它的值修改為"White":
e5.PNG (4.48 KB, 下載次數(shù): 79)
下載附件
2014-07-31 16:04 上傳
(8)刪除記錄
remove()方法是刪除集合中記錄主要方法,它的語法結(jié)構(gòu)為:
db.collectionspace.collection.remove([cond],[hint])
在SQL中對應(yīng)的操作:remove()的方法與DELETE 語句相似:
. [cond]參數(shù)對應(yīng)where語句
. [hint]參數(shù)是對應(yīng)索引表里的名稱
刪除集合中所有記錄
db.foo.bar.remove()
刪除集合中匹配條件記錄
db.foo.bar.remove({name:"Tom"})
刪除集合本身
db.foo.dropCL("bar")
刪除集合空間
db.dropCS("foo") |
|