zoukankan      html  css  js  c++  java
  • MongoDB简单使用

    一、MongoDB简介

      1、MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
      2、MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似jsonbson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引
      3、MongoDB是一个面向文档(document-oriented)的数据库,而不是关系型数据库。
      4、丰富的功能
           MongoDB作为一款通用型数据库,除了能够创建、读取、更新和删除数据之外,还提供了一系列不断扩展的独特功能。
    #1、索引 支持通用二级索引,允许多种快速查询,且提供唯一索引、复合索引、地理空间索引、全文索引。 #2、聚合 支持聚合管道,用户能通过简单的片段创建复杂的集合,并通过数据库自动优化。 #3、特殊的集合类型 支持存在时间有限的集合,适用于那些将在某个时刻过期的数据,如会话session。类似地,MongoDB也支持固定大小的集合,用于保存近期数据,如日志等... #4、文件存储 支持一种非常易用的协议,用于存储大文件和文件元数据。MongoDB并不具备一些在关系型数据库中很普遍的功能,如链接join和复杂的多行事务。省略这些的功能是处于架构上的考虑,或者说为了得到更好的扩展性,因为在分布式系统中这两个功能难以高效地实现。

    二、MongoDB的下载与安装

     1 1、下载安装
     2     https://www.mongodb.com/download-center/community
     3 2、安装路径为D:MongoDB,将D:MongoDBin目录加入环境变量
     4 3、新建目录与文件
     5 D:MongoDBdatadb
     6 D:MongoDBlogmongod.log
     7 
     8 或在C盘创建一个data/db文件夹
     9     - 数据的存放路径
    10 4、mongod启动服务
    11     进入终端,输入mongod启动mongoDB服务。
    12 
    13 5、mongo进入mongoDB客户端
    14     打开一个新的终端,输入mongo进入客户端
    15 
    16 6、、启动关闭
    17 net start MongoDB
    18 net stop MongoDB

    三、MongoDB数据库的基本操作

     1 一、数据库操作:
     2    1、切换库:
     3         SQL:
     4         use admin; 有则切换,无则报错。
     5 
     6         MongoDB:
     7         use tank; 有则切换,无则创建,并切换tank库中。
     8 
     9    2、查数据库:
    10         SQL:
    11         show databases;
    12 
    13         MongoDB:
    14         show dbs;
    15         显示的数据库若无数据,则不显示。
    16 
    17    3、删除库:
    18         SQL:
    19         drop database
    20 
    21         MongoDB:
    22         db.dropDatabase()
    23 
    24 
    25 二、集合操作:     MySQL中叫做表。
    26    1、创建集合:
    27         SQL:
    28         create table f1, f2...
    29 
    30         MongoDB:
    31         # 在当前库中通过.来创建集合
    32         db.student
    33 
    34     2、插入数据:
    35         # 插入多条数据
    36         db.student.insert([{"name1": "tank1"}, {"name2": "tank2"}])
    37 
    38         # 插入一条
    39         db.student.insert({"name": "tank"})
    40 
    41 
    42     3、查数据:
    43         # 查找student集合中所有数据
    44         db.student.find({})
    45 
    46         # 查一条 查找name为tank的记录
    47         db.student.find({"name":"tank"

    四、python链接MongoDB

    1、下载第三方模块pymongo
    pip3 install pymongo

    2、链接mongoDB客户端
    client = MongoClient('localhost', 27017)
     1 from pymongo import MongoClient
     2 
     3 #1、连接mongoDB客户端
     4 #参数1:mongoDB的ip地址
     5 #参数2:mongoDB的端口号 默认:27017
     6 client=MongoClient('localhost',27017)
     7 print(client)
     8 
     9 #2、进入lw_db
    10 print(client['lw_db'])
    11 
    12 #3、创建集合
    13 client['lw_db']['people']
    14 print(client['lw_db']['people'])
    15 
    16 #4、给lw_db库插入数据
    17 插入一条数据
    18 data1={
    19     'name':'liwei',
    20     'age':18,
    21     'sex':'male'
    22 }
    23 client['lw_db']['people'].insert_one(data1)  #data1为一条数据
    24 
    25 #插入多条数据
    26 data2={
    27     'name':'lw',
    28     'age':18,
    29     'sex':'male'
    30 }
    31 data3={
    32     'name':'lx',
    33     'age':18,
    34     'sex':'female'
    35 }
    36 client['lw_db']['people'].insert_many([data2,data3])



  • 相关阅读:
    121.买卖股票 求最大收益1 Best Time to Buy and Sell Stock
    409.求最长回文串的长度 LongestPalindrome
    202.快乐数 Happy Number
    459.(KMP)求字符串是否由模式重复构成 Repeated Substring Pattern
    326.是否为3的平方根 IsPowerOfThree
    231.是否为2的平方根 IsPowerOfTwo
    461.求两个数字转成二进制后的“汉明距离” Hamming Distance
    206.反转单链表 Reverse Linked List
    448. 数组中缺少的元素 Find All Numbers Disappeared in an Array
    常见表单元素处理
  • 原文地址:https://www.cnblogs.com/lweiser/p/11066624.html
Copyright © 2011-2022 走看看