由于在剛開始使用SequoiaDB時候,以為用getCS()就能獲得集合空間,用getCL()就能獲得集合。後來發現是需要list,故特意寫出來供大家參考~~~
首先建立兩個集合空間,分别為foo和Zoo。
db.createCS(“foo”)
db.createCS(“Zoo”)
然後在兩個集合空間中分别建立兩個集合。
db.foo.createCL(“bar”)
db.foo.createCL(“party”)
db.Zoo.createCL(“dog”)
db.Zoo.createCL(“fish”)
再分别在集合中插入兩條記錄。
db.foo.bar.insert([{_id:1,name:”Mike”,age:18},{_id:2,name:”Amy”,age:22,phone:158999}])
db.foo.party.insert([{_id:1,name:”Tom”,age:28,addr:”one”},{_id:2,name:”Lily”,age:32}])
db.Zoo.dog.insert([{_id:1,name:”xiaohuang”,age:1,color:”yellow”},{_id:2,name:”xiaohei”,age:3,color:”black”}])
db.Zoo.fish.insert([{_id:1,name:”jiyu”,age:1,color:”gray”},{_id:2,name:”goldfish”,age:1,color:”golden”}])
---------------------------------------------------------------------------------------------------------------------------------
通常情況下,我們可能會忘記之前曾建立過的集合空間,集合有哪些,那麼我們如何查詢我們查詢的集合空間和集合呢?
db.listCollectionSpaces()
Db.listCollections()
db.foo.bar.find()可以查詢集合中的所有記錄。
而如果你想獲得單個集合空間的資訊時,可以通過db.getCS()獲得。
getCS()方法的定義格式隻有name字段,name的值是字元串型。
例如,獲得Zoo集合空間的資訊,db.getCS(“Zoo”)
而如果你想獲得單個集合的資訊時,可以通過db.collectionspace.getCL()獲得。
getCL()方法的定義格式必須指定name參數,并且name的值在集合空間中存在,否則操作異常。例如,獲得foo集合空間中集合party的資訊,db.foo.getCL(“party”)
結論:通過上述實驗,了解了在SequoiaDB中,要獲得集合空間或集合等某一類型資訊,應該是采用list(),而如果是獲得單個集合空間或集合的資訊,則應該采用get()。同時,也通過實驗證明了_id的唯一性是針對同一個集合而言的,而非一個集合空間。