因為業務需求,原本的mysql關係型資料庫不能再繼續沿用,所以公司選擇了mongo作為儲存。
mongo的crud(增刪改查)還是很簡單的,因為mongo本身用的是dict型別,即key-value。但是在做專案中還是有問題把我困住了,所以我想要把這些問題寫出來,以防以後犯錯。
我在mongo有這樣一張表:
,],
"2":[,]
}
更新操作
我現在有這一需求:把"id":1中的"title"改為"test5",但是我在明面上是不知道前面"1"這個key的,必須通過一次mysql查詢才知道。
所以對於更新,我們有以下**
已知id和需要修改的title的值
key=getkeybyid(id) #得到"id"為1的key值,這裡為"1"
client = mongoclient('localhost', 27017)#比較常用
test=client.test #test為mongo的db
source=test.source #source為mongo test資料庫的資料表
source.update_one(,})
這樣就可以更新
"1":[,]
為
"1":[,]
刪除操作
我們現在要刪除"id"為1的資料,有以下**:
source.update_one(,}})
這樣就可以刪除"id"為1的資料,即source表變為
],
"2":[,]
}
MySQL中的更新與刪除
一.刪除操作 1.刪除資料庫 drop database dbname 2.刪除表 drop table tname 二.更新操作 1.重新命名一張表 rename table 原名 to 新名字 三.對列的修改 1.增加一列 alter table 表名字 add 列名字 資料型別 約束 2.刪除...
Hibernate3中的更新與刪除
在hibernate2中對某個表進行更新和刪除,必須先把它load出來,在後更改,然後再儲存。這個過程對於批量操作或者對於表關係比較複雜的情況,是很複雜的。在hibernate3中hql語句中已經支援update 和delete 了 但是要注意的是update和delete的hql不是物件導向的了。...
奇怪的Mongo資料庫更新操作變成了刪除操作
昨天在做mongo資料庫更新操作的時候奇怪的發現竟然變成了刪除操作,搞了很久都不知道原因,後來終於經過別人的指點,找出問題所在。更新操作的話先要把資料全部查出來,然後再更新,這樣才做了真正的更新 mapupdlstmap new hashmap 先要查詢一邊 mapmapuptcrmkey new ...