博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mongodb常用基本操作
阅读量:7142 次
发布时间:2019-06-28

本文共 2454 字,大约阅读时间需要 8 分钟。

0、 mongodb 默认存在的库

test库: 登录时默认存在的库

admin库: 系统预留库,mongodb系统管理库
local库: 本地预留库,存储关键日志

1 、命令种类

数据库对象(库(database),表(collection),数据行(document))

db.命令:

DB级别命令

db.[TAB] 类似于linux中的tab功能

db.help() db级别的命令使用帮助

collection级别操作

db.Collection_name.xxx

document级别操作:

db.t1.insert()

复制集有关(replication set):

rs.

分片集群(sharding cluster)

sh.

2、帮助

help
KEYWORDS.help()
KEYWORDS.[TAB]

show

show databases
show dbs
show tables
show collections
use
db

db.help()

db.a.help()
rs.help()
sh.help()

3 、常用操作

--查看当前db版本

test> db.version()

--显示当前数据库

test> db

test

db.getName()

test

--查询所有数据库

test> show dbs

– 切换数据库

use local

switched to db local

  • 查看所有的collection
    show tables;

– 显示当前数据库状态

test> use local
switched to db local

local> db.stats()

– 查看当前数据库的连接机器地址

db.getMongo()

connection to 127.0.0.1

指定数据库进行连接

默认连接本机test数据库


4、mongodb对象操作:

mongo mysql

库 -----> 库
集合 -----> 表
文档 -----> 数据行

4.1 库的操作:

– 创建数据库:

当use的时候,系统就会自动创建一个数据库。
如果use之后没有创建任何集合。
系统就会删除这个数据库。

– 删除数据库

如果没有选择任何数据库,会删除默认的test数据库
//删除test数据库

test> show dbs

local 0.000GB
test 0.000GB

test> use test

switched to db test
test> db.dropDatabase()
{ "dropped" : "test", "ok" : 1 }

4.2 集合及文档操作:

创建集合
admin> use app
switched to db app
app> db.createCollection('a')
{ "ok" : 1 }
app> db.createCollection('b')
{ "ok" : 1 }

show collections //查看当前数据下的所有集合

a b 或
db.getCollectionNames()
[ "a", "b" ]

注:当插入一个文档的时候,一个集合就会自动创建。

use oldboy

db.test.insert({name:"zhangsan"})
db.stu.insert({id:101,name:"zhangsan",age:20,gender:"m"})
show tables;
db.stu.insert({id:102,name:"lisi"})
db.stu.insert({a:"b",c:"d"})
db.stu.insert({a:1,c:2})

查询数据:

db.stu.find({}).pretty()

db.stu.find({id:101}).pretty();
{
"_id" : ObjectId("5b470168cfdebc16a5a82a97"),
"id" : 101,
"name" : "zhangsan",
"age" : 20,
"gender" : "m"
}

删除集合

app> use app
switched to db app

app> db.log.drop() //删除集合

– 重命名集合

//把log改名为log1
app> db.log.renameCollection("log1")
{ "ok" : 1 }
app> show collections
a b c
log1
app

批量插入数据

for(i=0;i<10000;i++){db.log.insert({"uid":i,"name":"mongodb","age":6,"date":new
Date()})}

Mongodb数据查询语句:

– 查询集合中的记录数

app> db.log.find() //查询所有记录

注:默认每页显示20条记录,当显示不下的的情况下,可以用it迭代命令查询下一页数据。

设置每页显示数据的大小:

DBQuery.shellBatchSize=50; //每页显示50条记录

app> db.log.find().pretty() //查询所有记录,并格式化输出

app> db.log.findOne() //查看第1条记录
app> db.log.count() //查询总的记录数

– 删除集合中的记录数

app> db.log.remove({}) //删除集合中所有记录

– 查看集合存储信息

app> db.log.stats()
app> db.log.totalSize() //集合中索引+数据压缩存储之后的大小
app> db.log.storageSize() //集合中数据压缩存储的大小

转载于:https://blog.51cto.com/12083623/2353137

你可能感兴趣的文章
OPC UA 统一架构学习3
查看>>
jms简介和原理
查看>>
理解并取证:SSH远程管理协议的工作原理
查看>>
centos apache搭建https
查看>>
QQ开放狮子下山 主动的华丽转身
查看>>
oracle 常用查询
查看>>
QT常用类
查看>>
马哥10-3
查看>>
nfs
查看>>
企业如何预防数据泄露
查看>>
整合SSH运行添加数据出现错误attempt to create saveOrUpdate event with null entity
查看>>
Django 和 Ajax 简介
查看>>
outlook下载通讯薄报0x80070422错误
查看>>
Java线程池配置原则
查看>>
python队列、线程间通信Queue,多进程模块multiprocessing
查看>>
docker 简单创建一个tomcat服务
查看>>
分布式消息队列RocketMQ部署与监控
查看>>
oracle中表空间的使用情况脚本
查看>>
我的友情链接
查看>>
R语言笔记 计算描述性统计量的函数
查看>>