您现在的位置是:网站首页>>数据库>>MongoDB

mongodb的一些简单操作

发布时间:2019-09-29 11:26:32作者:wangjian浏览量:93点赞量:0

    在我们安装了mongodb之后,我们可以对mongodb进行一些简单的操作,下面的所有命令都是在mongodb的后台管理shell中,进入mongodb的后台管理shell只需要在命令行运行

    mongo

    一:创建数据库

    use DATABASE_NAME  #创建数据库并切换到到此数据库,如果数据库已经存在,只切换

    如下:

    use wj #创建一个wj数据库
    db #当前数据库
    show dbs #查看所有的数据库

    image.png

    根据如上我们发现在查看所有数据库中没有看到我们创建的wj数据库,如果我们想要在show dbs命令中显示出我们创建的数据库的话,我们需要向我们创建的数据库添加数据

    db.wj.insert({'a':'111'}) #此命令按照mysql的意思就是表示向当前数据库中的wj表中的a字段中插入111,如果不存在wj表则创建一个wj表

    image.png

    二:删除数据库

    db.dropDatabase()  #删除当前数据库

    如下删除了wj数据库

    show dbs
    use wj
    db.dropDatabase()
    show dbs

    image.png

    三:创建集合(表)和删除集合(表)

    我们可以使用如下命令删除集合(表)

    db.createCollection(name, options) #创建集合,name为创建集合名称,options参数可选,指定有关内存大小及索引的选项
    db.collection.drop()  #collection表示需要删除的集合(表)

    options参数:

    image.png

    如下为先创建一个test表然后将test表删除 

    db.createCollection('test')   #在当前数据库中创建一个test表
    show tables  #展示当前数据库中所有的表
    db.test.drop() #删除当前数据库的test表
    show tables #展示当前数据库中所有的表

    image.png

    四:文档(数据)操作

    1:插入文档(数据)

    db.COLLECTION_NAME.insert(document)  #COLLECTION_NAME表示集合(表)的名称,document为数据集合

    简单实例:

    db.wj.insert({name:'wj',test:'test'})  #向当前数据库的wj集合(表)中的name字段插入wj值,test字段插入test值
    db.wj.find()#查询wj集合(表)数据

    image.png

    2:更新文档(数据)

    在mongodb中使用update和save方法来更新文档(数据)

    (1):update

    语法结构为:

    db.collection.update(
       <query>,
       <update>,
       {
         upsert: <boolean>,
         multi: <boolean>,
         writeConcern: <document>
       }
    )

    参数说明:

    query : update的查询条件,类似sql update查询内where后面的。
    update : update的对象和一些更新的操作符(如$,$inc...)等,也可以理解为sql update查询内set后面的
    upsert : 可选,这个参数的意思是,如果不存在update的记录,是否插入objNew,true为插入,默认是false,不插入。
    multi : 可选,mongodb 默认是false,只更新找到的第一条记录,如果这个参数为true,就把按条件查出来多条记录全部更新。
    writeConcern :可选,抛出异常的级别。

    简单实例如下:

    db.wj.update({name:'wj'},{$set:{name:'aaa'}}) #将当前数据库的wj表中name字段为wj的name字段值变为aaa,这里只更新一条记录,
    db.wj.update({name:'wj'},{$set:{name:'aaa'}},{multi:true})#将当前数据库的wj表中name字段为wj的name字段值变为aaa,如果查询到多条更新多条

    3:删除文档(数据)

    db.collection.remove(
      <query>,
      {
        justOne: <boolean>,
        writeConcern: <document>
      }
    )

    参数说明:

    query :(可选)删除的文档的条件。
    justOne : (可选)如果设为 true 或 1,则只删除一个文档,如果不设置该参数,或使用默认值 false,则删除所有匹配条件的文档。
    writeConcern :(可选)抛出异常的级别。

    简单实例:

    db.wj.remove({name:'wj'})#删除当前数据库中wj表中所有name字段为wj的数据
    db.wj.remove() #删除当前数据库中wj表中所有数据

    4:查询文档(数据)

    db.collection.find(query, projection)

    参数说明:

    query :可选,使用查询操作符指定查询条件
    projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)。
    db.collection.find(query, projection).pretty()

    表示以易读的方式来读取数据

    除了find查询数据我们还可以使用findOne() 方法,此方法只可以返回一条文档(数据)

    在mongodb中一些简单条件说明:

    image.png


0 +1