使用插入数据命令:
<代码>祝辞插入代码>
需要注意的是,如果插入一文件(现在理解,nosql类型的分贝数据不能说是记录了,它是已文件作为单位,而传统型的关系型数据库,我们说是插入一条记录),如果没有带人_id,那么会自动生成一个唯一的id,这个id好比关系型数据库里的主键一样。
如果是自己指定id,那么必须id是唯一的,这点关系型和nosql型都必须要求的;
数据字段的名字不能包含和美元。
在敲了一阵发现,擦,我要是再壳里面去编写复杂的插入语句,就壳的这种一行一句,不搞死我去啊。我想它肯定是支持向蝙蝠这种批处理或者其他,看它语法和js一模一样,于是大胆猜测它使用的就是javascript,于是我就用记事本+ +来编辑这些插入命令,试着插入复杂的对象,
哦,另外说一句,如果这个bios数据不存在,那么要先使用
<代码>在使用bios 代码>
生成一个数据库,如果你不往这里插入一笔数据,mongoDB会自动删除掉这个数据库;
所以还要插入一笔让mongodb维持这数据库的任意数据
<代码>祝辞db.bios.insert({答:“一个‘})代码>
编写了一个insert.js脚步,放在安装目录的js文件夹下。于是这样输入:
<代码>祝辞mongolocalhost: 27017/bios f: \ mongodb \ js \ insert.js 代码>
效果如图
可以看的到,这个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模式中,数据的保存方法中,如果要保存的数据已存在,那么它知道是修改这个数据,如果不存在则是新增。同样,这里保存也是如此。