MongoDB_1

???? 突然想去看下MongoDB的東西,于是有了這篇文章。其實很早以前就看過一些關于NoSql的文章,還記得當時里面有介紹MongoDB的,多瞅了2眼,并且在Window下安裝了MongoDB的驅動,小玩了會。今天重新翻出來,沒成想在命令行下竟然沒有能成功連接到MongoDB。一頓Baidu后發現了問題,原來是上次非正常退出MongoDB導致的問題,照貓畫虎,解決了問題:貼這里以備不時之需,

1、刪除%MONGO_HOME%/db下的.lock文件?
2、輸入命令 mongod --repair?
3、重啟mongoDB
這里只對MongoDB的使用做一些簡單記錄,環境配置什么的,請參考:MongoDB配置安裝

客戶端連接mongodb

在client的shell里,執行mongo.exe?

如何正常退出mongodb

在client的shell里,use admin,執行db.shutdownServer()即可!?

創建表

db.createCollection('zylTest')?

插入記錄

  單條記錄:

  db.zylTest.insert({"name":"zhoujy"})?

  多條記錄

  db.zylTest.insert([{"a":1,"b":2},{"a":2,"b":3},{"a":3,"b":4}])

插入記錄將按照Json結構來定義,若多條記錄的格式不相同,mongodb會自行做出處理

刪除記錄

單條刪除:db.zylTest.remove({"name":"zhoujy"})

全部刪除:db.zylTest.remove()?

更新記錄:

  $【inc】用于int類型的列加減操作

  這個部分比較麻煩:我們先來看【$inc】這個操作,【$inc】 用于int類型的key(列)加減操作,要是指定的要更新的key不存在,則會新增該key(列):以下面的操作為例:

如上圖所示在之前的結構中并不包含【pv】這一列,若第一次執行下面的操作,數據庫結構將發生響應的變化

db.zylTest.update({"name":"zhoujy"},{"$inc":{"pv":1}})

多次執行,列Pv的值將按輸入數值相加

相關命令行:

  只更新第一條出現的記錄,+1

  db. zylTest.update({"name":"a"},{"$inc":{"pv":1}})???

  更新所有符合條件的記錄,+1;(第4個參數是true)

  db. zylTest.update({"name":"a"},{"$inc":{"pv":1}},false,true)?

  要是更新條件找不到記錄,默認是不執行;要是第3個參數是true,則會新增一條記錄,包含完整的數據結構

  db. zylTest.update({"name":"a"},{"$inc":{"pv":1}},false,true)?

  總之上面的查詢相當于SQL中的

  update zylTest set pv=pv+1 where name =' zhoujy'

?

$【set】用于更新指定列

$set 用于更新指定key(列),要是指定的要更新的key不存在,則會新增該key(列):?

相關命令行:

  只更新第一條出現的記錄

  db. zylTest.update({"a":1},{"$set":{"b":"A"}})

  更新所有符合條件的記錄(第4個參數是true),若沒有符合條件的記錄則不執行任何操作,當第三個參數為true的時候,若找不到符合條件的記錄則會新增一條記錄.

  db. zylTest.update({"a ":-1},{"$set":{" b ":"A"}},false,true)?

  update zylTest set b=’A’ where a ='1?

$【unset】 用于刪除指定的列?

  刪除第一條b為2的記錄的列A

  db.zylTest.update({"b":2},{"$unset":{"a":1}})

  刪除復合條件的記錄的列A,第3個參數沒有意義

  db.zylTest.update({"b":"2"},{"$unset":{"a":1}},true,true)

  刪除所有記錄的列A

  db.zylTest.update({},{"$unset":{"a":1}},false,true)??????

 

其余更新操作暫時省略?

查詢

  返回所有記錄

  db.zylTest.find()??

?

  條件查詢

  db.zylTest.find({"a":1})

  db.zylTest.find({"a":1,"b":2})

?

  In or not in

  db.zylTest.find({"a":{"$in":[1,3,5,8]}})

  db.zylTest.find({"a":{"$nin":[1,3,5,8]}})?

?

  Or查詢

  db.zylTest.find({"$or":[{"a":1},{"b":"2"}]})

  db.zylTest.find({"$or":[{"a":{"$in":[1,2,3]}},{"b":"3"}]})?

?

  不等條件查詢:

  $lt(<);$lte(<=);$gt(>);$gte(>=);$ne(<>)

  db.zylTest.find({"a":{"$gt":1,"$lte":5}})

  db.zylTest.find({"a":{"$gt":1,"$lte":5,"$ne":3}})?

?

  限制查詢:

  db.zylTest.find({"a":{"$in":[1,3,5,8]}}).limit(1)

?

  排序:

  db.zylTest.find({"b":2}).sort({"a":-1})

?

  匹配查詢:

  這塊沒有看明白,后面再補充吧

?

?

?

轉載于:https://www.cnblogs.com/mfkaudx/p/3574004.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/258917.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/258917.shtml
英文地址,請注明出處:http://en.pswp.cn/news/258917.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

牛頓法與擬牛頓法,SDM方法的一些注記

SDM方法 考慮一般額NLS問題&#xff1a; f(x)minx||h(x)?y||2這里x為優化參數&#xff0c;h為非線性函數&#xff0c;y是已知變量&#xff0c;如下是基于梯度的迭代公式&#xff1a; ΔxαAJTh(h(x)?y)這里α是步長&#xff0c;A是縮放因子&#xff0c;Jh是h在當前參數x下的…

pyqt5從子目錄加載qrc文件_實戰PyQt5: 045-添加資源文件

添加資源文件在使用PyQt進行圖形界面開發的時候不免要用到一些外部資源&#xff0c;比如圖片&#xff0c;qss配置文件等。在前面代碼中&#xff0c;遇到這類問題&#xff0c;我們使用絕對路徑的方式來解決&#xff0c;這種方式&#xff0c;本身有其不方便之處(比如&#xff0c;…

《 Python樹莓派編程》——2.7 總結

本節書摘來自華章出版社《Python樹莓派編程》一書中的第2章&#xff0c;第2.7節&#xff0c;作者&#xff1a;[美]沃爾弗拉姆多納特&#xff08;Wolfram Donat&#xff09;著 韓德強 等譯&#xff0c;更多章節內容可以訪問云棲社區“華章計算機”公眾號查看。 2.7 總結 本章簡…

ACM的輸入輸出總結

關于ACM的輸入輸出&#xff08;一&#xff09; 一般來說ACM的現場賽會規定輸入輸出 或者是文件輸入標準輸出 也可能是文件輸入文件輸出 如果沒有規定的話那么一般就是標準的輸入輸出了 那說一下輸入輸出的重定向 一般用下面兩種方法 c常用: #include <fstream.h>ifstream…

hdu 2064漢諾塔III 遞推

漢諾塔遞推題&#xff0c;比漢諾塔多了一個限制條件&#xff0c;盤子只允許在相鄰的柱子之間移動。 分析&#xff1a; 第1步:初始狀態&#xff1b; 第2步:把上面的n-1個盤移到第3號桿上&#xff1b; 第3步:把第n個盤從1移到2&#xff1b; 第4步:把前n-1個從3移到1&#xff0c;給…

西門子ddc_鐵門關西門子兩通電動閥VVF42.25-10C+SKD60西

鐵門關西門子兩通電動閥西SIEMENS/西門子電動溫控閥、控制箱、電動蝶閥、電動球閥、超聲波熱量表、超聲波流量計、電磁流量計閥體灰口鑄鐵 EN-GJL-2502.霍尼韋爾主營&#xff1a;樓宇資料系統、熱網自控系統、風機盤管電動兩通閥、空氣壓差開關、水流開關、電動執行器、風閥執行…

swap關于指針的使用

先看下面兩個例子&#xff1a; #include <iostream> // std::cout #include <utility> // std::swapint main() {int x 10, y 20; // x:10 y:20int* p1 &x;int* p2 &y;std::swap(*p1, *p2); // x:20 y:10 …

JS-鍵盤事件之方向鍵移動元素

注意三點&#xff1a; 1&#xff1a;事件名稱onkeydown。 2&#xff1a;事件加給document&#xff0c;而非window。 3&#xff1a; 把元素的top&#xff0c;left值分別用offsetTop&#xff0c;offsetLeft來設定。 <!DOCTYPE html> <html><head><meta char…

Swift學習字符串、數組、字典

一.字符串的使用 let wiseWords "\"I am a handsome\"-boy" var emptyString "" if emptyString.isEmpty{ println("這是一個空值") }簡單說明&#xff1a;isEmpty方法是用來判斷字符串是否為空值的&#xff0c;之后會執行if語句中的…

python對excel操作簡書_Python讀寫Excel表格,就是這么簡單粗暴又好用

最近在做一些數據處理和計算的工作&#xff0c;因為數據是以.CSV格式保存的&#xff0c;因此剛開始直接用Excel來處理。 但是做著做著發現重復的勞動&#xff0c;其實并沒有多大的意義&#xff0c;于是就想著寫個小工具幫著處理。 以前正好在一本書上看到過&#xff0c;使用Pyt…

九度 1470 調整方陣

題目描述&#xff1a; 輸入一個N&#xff08;N<10&#xff09;階方陣&#xff0c;按照如下方式調整方陣&#xff1a;1.將第一列中最大數所在的行與第一行對調。2.將第二列中從第二行到第N行最大數所在的行與第二行對調。依此類推...N-1.將第N-1列中從第N-1行到第N行最大數所…

halcon/c++接口基礎 之 halcon初認識

從今天開始&#xff0c;開始更新博客&#xff0c;主要分享自己最近正在翻譯的Halcon/C教程。先給出第一篇文章&#xff0c;由于此文章&#xff0c;是用latex寫的&#xff0c;直接導成html&#xff0c;保存在七牛云存儲上&#xff0c;所以直接點擊鏈接就看到&#xff0c;后面我將…

指數型組織形成的 9 大驅動因素

指數時代&#xff0c;是一個前所未有的激動人心的世界。 Airbnb, 谷歌, 亞馬遜和GitHub這些知名的公司&#xff0c;都有一個讓人稱羨的共同點&#xff0c;那就是——他們都是非常成功的指數型組織&#xff08;Exponential Organizations&#xff0c;ExO’s&#xff09;。 “在當…

Java for LeetCode 061 Rotate List

Given a list, rotate the list to the right by k places, where k is non-negative. For example: Given 1->2->3->4->5->NULL and k 2, return 4->5->1->2->3->NULL. 解題思路&#xff1a; 只需找到對應的位置&#xff0c;然后指向head&…

mysqld:表mysql.plugin不存在_99%測試工程師不知道的數據庫知識|干貨

點擊上方“藍字”關注我們數據庫&#xff0c;簡而言之可視為電子化的文件柜——存儲電子文件的處所&#xff0c;用戶可以對文件中的數據進行新增、查詢、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應用程序彼此獨立…

Windows Phone 執行模型概述

Windows Phone 執行模型控制在 Windows Phone 上運行的應用程序的生命周期&#xff0c;該過程從啟動應用程序開始&#xff0c;直至應用程序終止。 該執行模型旨在始終為最終用戶提供快速響應的體驗。為此&#xff0c;在任何給定時間內&#xff0c;Windows Phone 僅允許一個應用…

halcon/c++接口基礎 之 構造函數與Halcon算子

Halcon/C提供了構造函數&#xff0c;主要基于適合的Halcon算子。比如說HImage和HBarCode基于read_image and create_bar_code_model。 請注意當前的Halcon版本針對不同的算子構造函數的功能不同。如下我們介紹了一些最常用的Halcon算子&#xff0c;而一個完整的構造函數列表可…

Android Wifi簡單的梳理【轉】

本文轉載自&#xff1a;http://blog.csdn.net/gabbzang/article/details/10005411 代表一個已經配置過的網絡。包含網絡ID(networkId)、該網絡ID代表的網絡的BSSID和SSID、加密機制、密碼等信息。 WifiInfo&#xff1a; 代表一個正在建立或者已經建立的網絡連接。該網絡的BSSID…

fenby C語言 P30

int a[5]&#xff0c;*pa; int a[5],*p&a[0]; #include <stdio.h> int main(void){ int a[5],*pa,i; for(i0;i<5;i) { *p1; p; }pp-5;for(i0;i<5;i,p)printf("%d\n",*p);return 0;}轉載于:https://www.cnblogs.com/amiaojiang/p/4507114.html

bat自動輸入用戶名和密碼_「小白到大牛之路6」交換機后臺管理之重復輸入用戶名和密碼...

項目需求解決項目5中存在的問題&#xff1a;用戶名和密碼只能輸入一次。如果輸入錯誤&#xff0c;就沒有機會重新輸入。項目實現#include int main(void) {// 定義變量&#xff0c;用來表示用戶名和密碼char name[32];char password[16];//輸入用戶名和密碼while (1) {// 輸入用…