Mongodb数据库
简介
- MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
- 介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。
特点
它的特点是高性能、易部署、易使用,存储数据非常方便。主要功能特性:
- 面向集合存储,易存储对象类型的数据。
- 模式自由。
- 支持动态查询。
- 支持完全索引,包含内部对象。
- 支持查询。
- 支持复制和故障恢复。
- 使用高效的二进制数据存储,包括大型对象(如视频等)。
- 自动处理碎片,以支持云计算层次的扩展性。
- 支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。
- 文件存储格式为BSON(一种JSON的扩展)。
- 可通过网络访问。
对mongodb数据库进行基本操作命令
1. show dbs
这个可以显示当前的实例下所有数据库的列表!
2. use test1
使用test1数据库,没有则默认创建
3. db.test1.save({"name":"qlier", age:21, "sex":"male"});插入一条数据。
db.test1.insert({"name":"tom", age:19, "sex":"male"});也是插入一条数据。
他们区别在于:insert仅仅是插入文档到集合中,如果记录不存在则插入,如果记录存在则忽略。save是在文档不存在时插入,存在时则是更新。
4. db.test1.find();
这个可以查询test1集合中所有的数据。
5. db.test1.find().pretty();
格式化查询
6. db.test1.update({name:"tom"}, {$set:{name:"Jim"}});
更新数据
7. db.test1.remove({name:"Jim"});
删除一条数据
8. db.test1.insertMany([{"name":"d1",age:21},{"name":"d2",age:22},{"name":"d3",age:23}]);
插入多条数据
这些都是很常用的基本的查询操作,还有更复杂的查询,比如group查询、联合查询、正则表达式查询、null值的处理等!