MonogDB初探增加和删除

1.插入并保存文档      

  在插入数据之前,首先用mongodb Shell命令db.baseUser.find() 查找集合的数据。

      

想必大家能猜到结果,什么东西都没有,那接着来说说怎么向 baseUser 集合中插入数据。插入baseUser 的方法如下: 

首先定义一个baseUser变量,用来存放要插入的用户对象,其实很简单,然后调用文档对象的insert 方法来将文档插入。然后用命令db.baseUser.find()查看刚插入的数据。

对于批量插入shell客户端不支持,单个文档保存数据库时,会有一个消息头,由这个消息头来告诉此数据要插入到哪个文档中,批量插入,会将多个文档一次性的插入数据库,插入速度回明显替提高。批

量插入应用在程序中。

注意:

1.mongodb 不需要预先创建一个集合,而是在插入第一条数据时自动创建集合.

2.文档中可以存储任何结构的数据,但是在实际应用中存储的还是相同的文档类型的结合。

3.每次插入数据时候集合中都活有一个ID,名称为  "_id".

插入原理:

MongodDB在执行插入式,首先将插入的数据转换为BSON格式,然后MongoDB会对BSON进行解析,并检查是否存才_id键,_id键在插入式会自动生成。mongoDB对文档大小做了限制,1.8之前的版本,文档大小不能超过4MB,1.8版本之后支持16MB。没有的数据校验,就是简单的将数据插入数据库,这样做的坏处是允许插入无效的数据。好处是不会受到注入式的攻击,更安全。另外不像关系型数据库那样有那么多的限制。

2.删除文档

在删除文档之前我们还是先调用db.baseUser.find()来查看当前集合中的文档数据。

可以看到有两条数据。要删除文档中的数据我们之需要调用db.baseUSre.remove() 方法来删除文档数据,执行完命令后的结果为:

调用mongoDB的db.baseUser.remove({"name":"lisi"}) 方法来删除name为李四的文档,删除数据需要传入一个对象参数,参数代表查询条件,匹配上的数据就会删除。

注意:

remove()函数接受一个查询文档的可选参数,传入参数后,只有符号条件的数据被删除。如果什么参数都不传的情况下,当前文档的数据会被全部删除。但是,删除数据时永久性的不能恢复,重要的数据记得备份啊。

db.baseUser.remove() :  不会删除集合本身,原有的索引也会保留。

db.baseUser.drop() :删除速度会变快,会把整个集合都删掉,所以索引也不会保留。小伙伴们这里像关系型数据的 drop table 啊

   

我是刚写博客,看别人博客写的都比较漂亮啊,小伙伴们能否给推荐个比较好的博客插件。

 

时间: 2024-08-24 19:45:27

MonogDB初探增加和删除的相关文章

Oracle 增加修改删除字段

添加字段的语法:alter table tablename add (column datatype [default value][null/not null],-.); 修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],-.); 删除字段的语法:alter table tablename drop (column); 添加.修改.删除多列的话,用逗号隔开. 使用alter

AngularJS实现数据列表的增加、删除和上移下移等功能实例

转: http://www.jb51.net/article/91991.htm 这篇文章给大家分享了AngularJS循环实现数据列表的增加.删除和上移下移等基础功能,对大家学习AngularJS具有一定的参考借鉴价值,有需要的朋友可以看看. 效果图 实例代码 <!DOCTYPE html> <html lang="en" ng-app="myapp" ng-controller="myCtrl"> <head&g

linux命令4 find、三个时间属性、硬链接和软连接、用户名和密码文件、增加和删除用户组、usermod、su、sudo

find搜索命令 其他搜索命令如下: [[email protected] 333]# which ls alias ls='ls --color=auto' /bin/ls [[email protected] 333]# echo $PATH /usr/lib/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/usr/local/jdk1.6.0_23/b

UITableView增加和删除、移动

复习一下: 1.在控制器上添加一个UITableView,  暂时该UITableView控件变量名命名为为tableView, 设置控件代理,实现控制器的UITableViewDataSource, UITableViewDelegate协议: 2.tableView控件的editing属性默认是NO, 并且UITableViewCell默认情况下没有删除和增加功能. 实现代理方法 - (void)tableView:(UITableView *)tableView commitEditing

6个Linux chkconfig命令实例 - 增加,删除,查看和修改services的自动启动选项

注意:service的安装目录在/etc/rc.d/init.d下,/etc/init.d 是/etc/rc.d/init.d的链接. chkconfig命令用来安装,查看或修改 services随系统启动的启动选项的设置.本文章包含了7个实例来解释如何使用chkconfig命令. 1 在shell脚本中检查service的启动选项的设置 当你执行chkconfig加service名字,如果service被配置为自动启动,则它将返回true.下列的代码段显示了如何在脚本中检查一个service是

EasyUI中datagrid实现显示、增加、 删除、 修改、 查询操作(后台代码C#)

2datagrid加载数据.代码如下所示 一.数据的显示 1新建HtmlPage2.html页面,引入相关文件.如下所示 <script src="easyui/js/jquery-1.8.2.min.js"></script>  <script src="easyui/js/jquery.easyui.min.js"></script>  <link href="easyui/css/themes/d

使用jquery增加、删除html文档节点

jquery相对亦js来说在对DOM文档操作来说非常方便,本文主要讨论使用jquery对html文档中节的删除 如上图,因为是急救电话数量是不确定的,因此需要能够灵活地添加和删除,因此就需要用jquery来对节点进行操作. 代码在附件中,可以正常执行,这里只是对节点的增加和删除中部分代码,其他类似操作可以在此基础上进行修改操作既可以实现. 主要代码如下所示,主要是最后的jquery代码注意要引用jquery才可正常执行的: <html><head><meta http-equ

php版给UEditor的图片在线管理栏目增加图片删除功能

1.找到uedior/dialogs/image/image.js文件,Add为修改部分的代码: /** * tab点击处理事件 * @param tabHeads * @param tabBodys * @param obj */ function clickHandler(tabHeads, tabBodys, obj) { //head样式更改 for (var k = 0, len = tabHeads.length; k < len; k++) { tabHeads[k].classN

jquery动态增加或删除tr和td【实际项目】

难点: (1)动态增加.删除tr和td (2)每天tr和td都有下标,且下标要动态变化, (3)tr和td为什么下标不能随便写,原因是此处需要把所有tr中的数据以list的形式发送到后台对象中,所有每天tr中的tr中name='对象[index].属性',必须有下标且下标要从0开始且要连续不能跳跃 (4)增加tr和td需要学习细节有: 创建td   var $tdName = $("<td class='in-ctt'></td>"); td添加内容   $td