1.什么是数据库?
数据库:是按照数据结构来组织、存储和管理数据的仓库。
2.常见的数据库有哪些?
关系型数据库:以表为单位,可以有多张表。
id user_id 订单号
1 10003 126378658436723468
非关系型数据库:
{
_id:1000006,
username:'lisi',
age:25,
sex:'nan',
订单:[
1236349,
64368923,
65236789
]
}
关系型数据库:Access、mySql、SqlServer、oracle、db2等。
非关系型数据库:MongoDB、Redis、HBase、CouchDB等。
3.MongoDB数据库
- 是一个基于分布式文件存储的数据库。
- 是非关系型数据库当中功能最丰富,最像关系型数据库的。
- 它的特点是高性能、易部署、易使用,存储数据非常方便。
- 文件存储格式为BSON(一种JSON的扩展)。是一种类似二进制形式的存储格式,支持文档对象和数组对象。
4.MongDB命令
- help 查看帮助
- show dbs 显示数据库列表
- use dbname 创建数据库
- show collections 显示数据库中的集合
增加数据库
- db.web.save({“name”:" “})
创建了名为web的集合,并增加了一条{“name“:”
"}的数据,save会覆盖之前的内容 。 - db.web.insert({“name”:" ",“age”:10})
在web集合中插入一条新数据,如果没有web集合,mongodb会自动创建。 insert若新增的数据主键已存在,insert会报错。
_id是主键,主键是每条数据的唯一标识,不能重复。
- { _id : ObjectId(“57e8d34b4764fb71d0a89caa”), " name " : " 老李"}
,_id是主键save - Save(objectId(“57e8d34b4764fb71d0a89caa”), “name”:“老王”}),会把老李改为老王。
删除数据
- db.user.remove({ }) 删除users集合下的所有数据。
- db.users.remove({“name”:“left”}) 删除当前数据库users集合下的name="lecaf"数据。
- db.users.drop()或db.runCommand({“drop”:“users”}) 删除集合users。
- db.runCommend({“dropDatabase”:1}) 删除当前数据库。
查找数据
- db.user.find(); 查找users集合中的所有数据。
- db.users.findOne() 查找users集合中的第一条数据。
- db.users.find().pretty() 格式化查询的数据。
修改数据
- db.web.update({“name”:“a1”},{$sex:{sex:“women”}},true,true)
*修改name=a1 的数据为sex=1,第一个参数是查询条件,第二个参数是修改内容,主键不能修改,第三个参数表示匹配所有符合条件的数据,第四个参数表示修改所有匹配到的数据。
条件查找
- db.collection.find({“key”:value}) 查找key=value的数据。
- db.collection.find({“key”:{$gt:value, 还可以有条件 }}) key>value。 $gte >=
- db.collextion.find({“key”:{$lt:value}}) key<value。 $lte <=
$ne !=
排序
- db.collextion.find().sort({ “key”:-1/“key”:1}) 1代表升序,-1代表降序