• MongoDB 表(集合) 创建删除、数据增删改查


    MongoDB 表(集合) 创建删除和增删改查数据

    创建一个集合(emp

    在创建集合之前先使用use xxx,选择数据库,如果没有会创建(并不是真正的创建,只有在数据库里面保存集合数据之后才能够真正创建数据库

    当真正创建完集合之后,这个时候mydb数据库才会真正的存在

    db.createCollection("emp")  //创建默认集合

    还可以创建指定参数的集合

    db.createCollection("emp2", { capped : true, autoIndexId : true, size : 6142800, max : 10000 } )    //创建指定参数集合

    capped:Boolean (可选)如果为true,则启用封顶集合。封顶集合是固定大小的集合,会自动覆盖最早的条目,当它达到其最大大小。如果指定true,则需要也指定尺寸参数。

    autoIndexId:Boolean (可选)如果为true,_id字段自动创建索引,默认值是false,慎用false,因为会导致同步数据时负载很高,建议设置为true。

    size number:(可选)指定最大大小字节封顶集合。如果封顶如果是 true,那么你还需要指定这个字段。

    max number:(可选)指定封顶集合允许在文件的最大数量。

    但是很多时候如果按照以上的代码形式进行会觉得不正常,因为正常情况下使用MongoDB数据库集合操作的时候都是直接向里面保持一个数据,使用这种方式会自动创建集合

    db.teacher.insert({"hetao":"php"})   //自动创建名为teacher的数据集,里面有一条键值对 

    查询所有集合

    show collections

    查看表(集合)的数据

    语法:db.集合名称.find({若干条件})

    从传统的数据表来看(集合就相当于表的结构),表的结构一旦定义就必须按照其定义的要求进行内容的编写,但是mongodb不一样,他可以自己随意扩充数据

    dept表中增加不规则数据

    此时dept集合的内容可以由用户随便去定义,完全不用考虑其他的结构,那么实际上就必须明确一定了,在MongoDB数据库里面是绝对不可能存在有查看集合结构的操作

    关于id的问题

    MongoDB集合中的每一行记录都会自动生成一个:"_id" : ObjectId("59527a095d2e7428aedd16e6"),数据的组成是:时间戳+机器码+进程的PID+计数器(这个ID信息是MongoDB数据库自己为用户生成的)

    查看单独的一个文档信息

    也就是查看集合里的第一条数据(不传参数默认是第一条,并且只有一条)

    根据id删除数据(删除一行)

    删除符合条件的第一个条数据

    db.mycol.remove({'title':/MongoDB/},1)  //只删除符合条件的第1条记录 

    全表清空

    db.mycol.remove({})              //全表清空 

    根据id更新数据

    更新后的数据完全按照更新时的的数据结构

    删除集合

    语法:db.集合名称.drop(),删除集合之后再查看这个集合的表的数据,不会报错,没有任何提示

    删除当前所在的数据库

    这个命令表示删除当前所在的数据库,必须先切换到数据库后才可以删除

    增加数据操作语法

    使用 db.集合名称.insert()   可以实现数据的增加操作,增加数据操作之前先使用数据库

    这时候并没有创建mldn的这个数据库,需要插入数据或者创建一个集之后,这个数据库才会被创建,然后我们新增一个简单的数据

    以数组形式增加多条数据

    这种方式提示也是一下子增加多个数据的方式,如果想要保存多个数据,那么就使用数组的形式

    增加多个数据

    如果数据保存很多的情况下,列表是不会全部列出,只会列出部分的内容

    复杂的数据查询

    数据查询简介

    MongoDB数据库中,对于查询的支持非常到位,包含有关系运算;逻辑运算;数组运算;正则运算等等

    对于数据的查询操作核心的语法:db.集合名称.find({查询条件},[{设置显示的字段}]);

    增加查询条件(根据某个字段的值进行查询)

    发现在进行数据查询的时候也是按照JOSN的形式设置的相等关系,它的整个开发过程中都不可能离开JSON数据

    设置显示字段

    对于设置的显示字段严格来讲就称为数据的投影操作,如果不需要显示的字段设置为0而需要显示的字段设置为1

    不设置的默认是显示,大部分的情况下,这种投影操作的意义不大,同时对于数据的查询也可以使用 pretty()函数

    pretty()函数查询

    数据列多的时候,可以查询出来更好看的列表格式

    查询单个数据

    不加查询条件,默认查询出来的是集合中的第一条数据

    数据查询(关系运算)

    MongoDB中支持的关系查询操作:大于($gt);小于($lt);大于等于(>e);小于等于($lte;不等于($ne;等于(key:value

    但是要想让这些操作可以正常使用,那么需要准备出一个数据集合,定义一个学生信息集合

    等于(key:value):查询name为蜜蜜的那条数据

    查询sex为女的数据

    大于($gt):查询age大于21的数据

    小于($lt

    小于等于($lte

    不等于($ne):查询nmae不等于蜜蜜的数据

    数据查询(逻辑运算)

    逻辑运算主要有三种类型:与($and);或($or);非($not/$nor

    与($and):查询age1925之间的数据,可以使用关系运算的多条结合

    或($or)查询age大于19或者score大于90的数据

    数据查询(模运算)

    模运算使用 $mod 来完成

    数据查询(模运算)示例:表示结果是20,余数是0

    表示结果是20,余数是1

    数据查询(范围运算)

    $in(在范围之中);$nin(不在范围之中)   查询name张三,蜜蜜,多多”的数据

    不在范围之中

  • 相关阅读:
    C# SqlDataAdapter
    数据库游标
    什么是DooPHP Framework ?
    健康世界官方网站绿色健康知识门户网站源码www.jiankangshijie.com
    蓝色教程资讯、软件下载网站风格全套织梦模板
    分享一本正在看的电子书,相当不错
    DooPHP中国官方微博
    DooPHP Framework 中文手册 v1.2
    吉林织梦网络公司网站风格模板 www.thinkphp.biz
    CSS HACK:IE6、IE7、IE8、Firefox兼容性问题解决方案
  • 原文地址:https://www.cnblogs.com/LO-ME/p/10857087.html
Copyright © 2020-2023  润新知