MongoDB入门



安装

Window安装二进制包
数据库默认目录 C:\data\db 自行创建
启动服务 mongod 如果数据库目录在其他位置,则需要指定 --dbpath /path/to/db/
启动客户端 mongo 也可以使用ItelliJ IDEA的Mongo插件


基本概念

SQL术语/概念 MongoDB术语/概念 解释/说明
database database 数据库
table collection 数据库表/集合
row document 数据记录行/文档 {key: value}
column field 数据字段/域
index index 索引
table joins 表连接, 不支持
primary key primary key 主键,MongoDB自动将_id字段设置为主键

数据库操作( db.help() )

1
2
3
4
show dbs  显示所有数据库
db 显示当前所在数据库
use testdb 切换到tesdbt数据库,没有则新建testdb数据库
db.dropDatabase() 删除当前所在数据库

集合操作( db.col.help() )

1
2
3
4
5
6
7
8
show collections 显示所有集合
db.createCollection(name, { size : ..., capped : ..., max : ... } ) 创建集合 或者直接db.colname.insert({...})插入同时创建
db.col.insert({'xx':'xx',...}) 向col集合中插入文档,coll不存在则新建
db.col.find() 查看col集合中的所有文档,find(m,n)可以指定查询个数,find().sort() 可以连接使用,还有其他的.pretty(), .size(), .count()...
db.col.findOne() 查看最新插入的一个文档
db.col.drop() 删除col集合
db.col.update(<query>,{...}) 更新指定文档
db.col.remove(<query>) 删除指定文档

重命名集合
db.adminCommand({renameCollection:”test.test”, to:”test.test_new”})

也可以将原集合移动到另一个数据库中
  db.adminCommand({renameCollection:”test.test”, to:”another_db.test”})

索引操作

一般原则:唯一值,数据量大的时候,并且该字段较常用语查询判断,建立索引可以加快查询的速度。

1
2
3
db.col.getIndexes()   查询存在的所有索引
db.col.ensureIndex({"name": 1}) 创建索引
db.col.dropIndex({"name": 1}) 删除索引


用Python操作

pip install pymongo

1
2
3
4
5
6
7
import pymongo

client = pymongo.MongoClient() 可以传递参数 ('localhost', 27017) or ('mongod://localhost:21017/')
db = client['testdb'] or client.testdb
posts = db['posts'] or db.posts
posts.insert({'xx':'xx', ...})
posts.find()


1.如果本文帮到了您,不妨点一下右下角的 分享按钮.
2.您的鼓励是博主写作最大的动力,感谢您的分享和赞赏.