我们终端输入mongo即可登录Mongodb数据库
登录后我们就可以输入命令来实现功能了
查看数据库
show databases 或show dbs (结尾不用加;)
刚创建的服务端,只有admin,config,local三个数据库
查看当前数据库
db
切换数据库
use 数据库名
删除当前数据库
db.dropDatabase() 这里db指代的是当前的数据库
创建数据库
mongodb创建数据库就是
use 数据库名 (当数据库不存在就创建)
MongoDB数据库没有表的概念,而是使用集合
不手动创建集合,向不存在集合插入数据,集合创建
手动创建,db.createCollection(name,options)
db.createCollection('stu')就是给当前数据库创建了'stu'的集合
db.createCollection('sub',{capped:true,size:10})我们设置capped属性时,集合达到size值(单位字节)就会后面的数据将前面的覆盖(相当于先进先出的队列)
查看集合 show collections
删除集合db.集合名.drop()
如上图,我们db.t250.drop()就把当前数据库的t250集合删掉了
MongoDB存储的数据类型
object id:我们数据库存储很多个字典,字典有文档ID(MongoDB自动帮我们生成)
每个字典为了保证唯一性,有_id属性(类型object id),我们可以手动设置,也可以让自动生成
这个类型是12字节的十六进制数,每个位置代表如上图
我们怎么看到这个object id呢,见上图,我们没有test1000,我们直接给插入就实现了创建,我们查看数据库,可以看到这个object id
String:字符串,必须有效utf-8
Boolean:布尔类型,true或false(记得是小写)
Integer:整数类型32位或64位,取决于服务器
Double:存储浮点值
Object:文档对象,即字典
Null:存储Null值
Timestamp:时间戳,1970-1-1到现在的秒数
Date:当前日期时间的unix格式
使用new Date("YYYY-MM-DD")格式创建Date数据,自动补0,我们使用python里datetime.datetime()来实现对应类型
数据库插入
db.集合名.insert(文档) 文档是json格式(字典)
如上可以看到如何插入,插入的object id是不一样的
上图为指定_id键插入
还有一种插入是使用db.集合名.save(文档)
和insert的区别是,如果我们手动插入带_id的项目,如果_id已存在,insert会报错,而save会保留我们新的文档(把之前同_id的覆盖掉)
简单查询
db.集合名.find()