-
MongoDB搭建
查看全部 -
db.imooc_collection.remove()
remove() 进行记录删除
不带参数会报错
db.imooc_collection.remove
function (t, justOne)
t 表示查找的条件
justOne 表示是否只删除一个 此参数默认 false,
所以默认情况下 是删除所有满足条件的记录
db.imooc_collection.drop()
drop() 进行表删除
查看全部 -
数据量少时无索引比较快
数据量大时有索引比较快
索引对查询有优化,对插入和更改有影响,因为在插入和更改时需要更新索引
db.imooc_collection.getIndexes()
getIndexes() 查看索引
索引的结构是个数组,意味着可以有多个索引
db.imooc_collection.ensureIndex({x:1})
ensureIndex创建索引,所带参数意思为:x为索引字段,1 代表正向排序,-1代表逆向排序。
查看全部 -
update() 只会更新满足条件的第一条记录。
设计初衷是为了防止误操作。。。。
db.imooc_collection.update
function (query, obj, upsert, multi)
update 函数的定义在最后有两个参数 upsert,multi 两个参数的默认值都是false
upsert 的意义是 在update 未找到相应记录时,是否插入新纪录
multi 的意义是 是否对多条记录产生影响。
查看全部 -
update的第一个参数其实是find带的参数,主要用于查找,当条件不满足的时候也就是查找不到相应数据记录的时候如果我们对其更新是不会产生任何效果的。
但是往往有需求 在update不起作用的时候 要自动创建新纪录
db.imooc_collection.update({z:10},{y:99},true)
查找的条件为 {z:10} 更新为的类容为{y:99}
而此时我并没有z:10的数据,此时第三个参数起作用了,当它为true时,如果update 根本没找到记录,则他会直接插入一条{y:99}的记录。
db.imooc_collection.update({z:10},{$set:{y:99}},true)
如果更新的时候带了{$set: } 那么会将条件部分和更新的部分一同插入一条记录中
查看全部 -
db.imooc_collection.update({x:1},{x:999})
update({x:1},{x:999}) 用于更新,至少带两个参数,第一个是原来的数据查询,第二个是更改后的,记录内容,其更新方式是将原来的类容进行覆盖。
db.imooc_collection.update({z:100},{$set:{y:99}})
在更新数据的外面增加{$set: }即可保证只更新存在的字段。
查看全部 -
show dbs 显示所有数据库
显示已经被初始化之后的数据库
show collections 显示表。
use xxx 选择 xxx 数据库
数据库不存在也可被use 且use后不会被立即创建,而是对其进行操作之后才会初始化数据库,并写入数据。
db.dropDatabase() 删除当前数据库
db.imooc_collection.insert({x:1})
每一条记录都是一个json 每个记录都会有一个 _id 字段,这个字段在一个集合中不能重复,可以自己指定也可以系统生成。
db.imooc_collection.find()
find用于查询,不带参数时查询全部,带参数时查询满足条件的记录。条件格式也是json,比如find({x:1}) 就是查询 x=1的记录
db.imooc_collection.find().count() 计算查询到的数量和
count() 计算查询到的记录的个数。
db.imooc_collection.find().skip(3).limit(2).sort({x:1})
skip(x) 表示跳过查询到的数据中的最前面x条记录
limit(x) 表示最终显示的数据的条数为x条
sort({x:1}) 表示按照x字段进行排序,至于为什么是{x:1}我不知道
查看全部 -
配置文件中的相对路径只是相对于当前pwd 的,并不是相对于 配置文件的。。采坑
查看全部 -
MongoDB特性
没有表结构,每条记录可以完全不同的结构
业务开发 方便快捷
查看全部 -
sql数据库:实时一致性、事务、多表联合查询
NoSql数据库:简单便捷、方便扩展、更好的性能
查看全部 -
创建全文索引的方法
查看全部 -
数据删除 remove 必须传参数,不传会报错,他默认删除所有查找到的数据 db.imooc_collection.remove({c:2}) db.imooc_collection.remove({}) 删除整张表 db.collection.drop
查看全部 -
在进行全部更新时只允许,使用$set操作,不能用全量覆盖操作
db.collection.update({c:1}, {$set:{$c:99}}, false, true)
查看全部 -
mongo支持使用js.
插入多条数据
for(i=3;i<100;i++)db.imooc_collection.insert({ x : i })
查看全部 -
停止mongo服务
use admin
db.shutdownServer()
查看某文件倒数的几行数据
tail -f log/mongo.log
tail filename
tail -20 log/mongo.log
查看全部
举报