mongodb的写操作

  

使用插入数据命令:

  

<代码>祝辞插入

  

需要注意的是,如果插入一文件(现在理解,nosql类型的分贝数据不能说是记录了,它是已文件作为单位,而传统型的关系型数据库,我们说是插入一条记录),如果没有带人_id,那么会自动生成一个唯一的id,这个id好比关系型数据库里的主键一样。

  

如果是自己指定id,那么必须id是唯一的,这点关系型和nosql型都必须要求的;

  

数据字段的名字不能包含和美元。

  

在敲了一阵发现,擦,我要是再壳里面去编写复杂的插入语句,就壳的这种一行一句,不搞死我去啊。我想它肯定是支持向蝙蝠这种批处理或者其他,看它语法和js一模一样,于是大胆猜测它使用的就是javascript,于是我就用记事本+ +来编辑这些插入命令,试着插入复杂的对象,

  

哦,另外说一句,如果这个bios数据不存在,那么要先使用

  

<代码>在使用bios

  

生成一个数据库,如果你不往这里插入一笔数据,mongoDB会自动删除掉这个数据库;

  

所以还要插入一笔让mongodb维持这数据库的任意数据

  

<代码>祝辞db.bios.insert({答:“一个‘})

  

 mongodb的写操作

  

编写了一个insert.js脚步,放在安装目录的js文件夹下。于是这样输入:

  

<代码>祝辞mongolocalhost: 27017/bios  f: \ mongodb \ js \ insert.js

  

效果如图

  

 mongodb的写操作

  

可以看的到,这个js脚步成功执行;

  

要查询这个文档,输入命令:

  

<代码>祝辞db.bios。找到({name:{第一:“约翰”,最后:‘陈’}});

  

有了js写更多的语句,就方便多了。

  

Isert语句支持多个批量插入就像下面这样:

  

插入。js语句:

        db.bios.insert (   (   {   _id: 3,   名称:{第一:“恩典”,最后:“斗”},   标题:“少将”,   出生:新日期(1906年12月09年),   死亡:新日期(1992年1月1日),   contrib: [‘UNIVAC’,‘编译器’,‘FLOW-MATIC’,‘COBOL),   奖项:[   {   奖:“今年计算机科学的人”,   :1969年,   :“数据处理管理协会”   },   {   奖:“杰出的”,   :1973年,   :“英国计算机社会”   },   {   奖:“w·w·麦克道尔奖”,   :1976年,   :“IEEE计算机协会”   },   {   奖:“国家技术勋章”,   :1991年,   :“美国”   }   ]   },   {   _id: 4   名称:{第一:“克里斯汀”,最后:“尼加德”},   出生:新日期(1926年8月27日),   死亡:新日期(2002年8月10日),   普通发布版:“OOP”、“Simula”,   奖项:[   {   奖:“罗辛奖”,   :1999年,   :“挪威数据协会”   },   {   奖:“图灵奖”,   :2001年,   由:“ACM”   },   {   奖:“IEEE约翰·冯·诺依曼勋章”,   :2001年,   :“IEEE”   }   ]   },   {   _id: 5   名称:{第一:‘Ole-Johan’,最后:“达尔”},   出生:新日期(1931年10月12日),   死亡:新日期(2002年6月29日),   普通发布版:“OOP”、“Simula”,   奖项:[   {   奖:“罗辛奖”,   :1999年,   :“挪威数据协会”   },   {   奖:“图灵奖”,   :2001年,   由:“ACM”   },   {   奖:“IEEE约翰·冯·诺依曼勋章”,   :2001年,   :“IEEE”   }   ]   }   ]   );   db.bios.insert (   {   名称:{第一:“约翰”,最后:“麦卡锡”},   出生:新日期(04年9月,1927),   死亡:新日期(2011年12月24日),   contrib:(“口齿不清”,“人工智能”,“算法”),   奖项:[   {   奖:“图灵奖”,   :1971年,   由:“ACM”   },   {   奖:“京都奖”,   :1988年,   由:“Inamori基金会”   },   {   奖:“国家科学勋章”,   :1990年,   :“国家科学基金会”   }   ]   }   )   c=db.bios。找到({name:{第一:“约翰”,最后:“麦卡锡”}});   而((c.hasNext ())) printjson (c.next ())      

=================================================

  

Mongo还有个保存方法,这个方法同样也是插入数据。咋一样是一样的,仔细想想如果是一样的,那干嘛不统一,于是想到了ORM模式中,数据的保存方法中,如果要保存的数据已存在,那么它知道是修改这个数据,如果不存在则是新增。同样,这里保存也是如此。

mongodb的写操作