mongodb的基本使用
[root@host51 ~]# mongo --host 192.168.4.51 --port 27051
MongoDB shell version v3.6.3
connecting to: mongodb://192.168.4.51:27051/
MongoDB server version: 3.6.3
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
> use gamedb //没有库,就
switched to db gamedb
库管理命令: 查看 创建 切换 删除
– show dbs 查看已有的库
显示当前所在的库
– db
– use 库名 切换库,若库不存在的话 自动延时创建库
– show collections 或 show tables 查看库下已有的
集合
– db.dropDatabase()
删除当前所在的库
> db.dropDatabase() //删除当前库
{ "ok" : 1 }
库名命名规则:
• 数据库名可以是满足以下条件的任意 UTF-8 字符串。
– 不能是空字符串( "") 。
– 不得含有 ' ' (空格 ) 、 . 、 $ 、 / 、 \ 和 \0 ( 空字符 )
。
– 应全部小写。
– 最多 64 字节。
• 集合管理命令:查看 创建 删除
– show collections 或 show tables # 查看集合
> show tables
c1
– db. 集合名 .save({'',''})在时,创建并添加文档
# 创建集合,集合不存
> db.c1.save({name:"bob",email:"plj@tedu.cn"})
WriteResult({ "nInserted" : 1 })
• 插入记录
> db.c1.insert({name:"luly",class:"nsd1804"})
WriteResult({ "nInserted" : 1 })
> db.c1.find()
{ "_id" : ObjectId("5b61309332bc8e678acd6f3b"), "name" : "bob", "email" : "plj@tedu.cn" }
{ "_id" : ObjectId("5b614dab32bc8e678acd6f3c"), "name" : "luly", "class" : "nsd1804" }
– db. 集合名 .drop() # 删除集合
> db.c1.remove({name:"luly"})
WriteResult({ "nRemoved" : 1 })
> db.c1.find()
{ "_id" : ObjectId("5b61309332bc8e678acd6f3b"), "name" : "bob", "email" : "plj@tedu.cn" }
> show tables
c1
> db.c1.drop()
true
> show tables
库的管理命令 表的管理命令 文档的管理命令
mongodb 的数据类型:
字符 string/ 布尔 bool/ 空 null
• 字符串 string
– UTF-8 字符串都可以表示为字符串类型的数据
– {name:” 张三” } 或 { school:“tarena”}
> db.c2.save({name:"张三",school:"达外"})
WriteResult({ "nInserted" : 1 })
> db.c2.find()
{ "_id" : ObjectId("5b61513d32bc8e678acd6f3f"), "name" : "bob", "school" : "tarena" }
{ "_id" : ObjectId("5b61519132bc8e678acd6f40"), "name" : "zhangsan", "school" : "danei" }
{ "_id" : ObjectId("5b6151b132bc8e678acd6f41"), "name" : "张三", "school" : "达外" }
• 布尔 bool
– 布尔类型有两个值 true 和 false , {x:true}
> db.c2.save({name:"jack",school:"tarena",single:false})
WriteResult({ "nInserted" : 1 })
• 空 null
– 用于表示空值或者不存在的字段, {x:null}
> db.c2.save({name:"lilei";school:"tarena",single:false,pay:null})
> db.c2.find()
{ "_id" : ObjectId("5b61513d32bc8e678acd6f3f"), "name" : "bob", "school" : "tarena" }
{ "_id" : ObjectId("5b61519132bc8e678acd6f40"), "name" : "zhangsan", "school" : "danei" }
{ "_id" : ObjectId("5b6151b132bc8e678acd6f41"), "name" : "张三", "school" : "达外" }
{ "_id" : ObjectId("5b61526b32bc8e678acd6f42"), "name" : "jack", "school" : "tarena", "single" : false }
{ "_id" : ObjectId("5b6152ea32bc8e678acd6f43"), "name" : "lilei", "school" : "tarena", "single" : false, "pay" : null }
> db.c2.count();
5
数值 / 数组 array
• 数值
– shell 默认使用 64 为浮点型数值。 {x : 3.14} 或 {x : 3} 。
– NumberInt ( 4 字节整数) {x:NumberInt(3)}
> db.c2.save({name:"tom",xf:NumberInt(195.23)})
WriteResult({ "nInserted" : 1 })
> db.c2.find()
{ "_id" : ObjectId("5b61559c32bc8e678acd6f45"), "name" : "tom", "xf" : 195 }
– NumberLong ( 8 字节整数) {x:NumberLong(3)}
> db.c2.save({name:"tom",xf:NumberLong(4918)})
WriteResult({ "nInserted" : 1 })
> db.c2.find()
{ "_id" : ObjectId("5b61559c32bc8e678acd6f45"), "name" : "tom", "xf" : 195 }
{ "_id" : ObjectId("5b6155ef32bc8e678acd6f46"), "name" : "tom", "xf" : NumberLong(4918) }
> db.c2.save({name:"tom",xf:NumberLong(195.23)})
2018-08-01T14:41:17.761+0800 E QUERY [thread1] Error: number passed to NumberLong must be representable as an int64_t :
@(shell):1:27
• 数组 array
– 数据列表或数据集可以表示为数组
– {x : [“a“ ,“ b”,”c”]}
> db.c2.save({name:"xiaoqiang",like:["gril","eat","piao","sleep"]})
WriteResult({ "nInserted" : 1 })
代码 / 日期 / 对象
• 代码
– 查询和文档中可以包括任何 JavaScript 代码
– {x: function( ){}}
> db.c2.save(
... {
... name:"php",
... code:function(){},
... like:100000})
WriteResult({ "nInserted" : 1 })
• 日期
– 日期被存储为自新纪元依赖经过的毫秒数,不存储时区
– {x:new Date( )}
> db.c2.save({name:"kk",sr:Date()})
WriteResult({ "nInserted" : 1 })
> db.c2.find({name:"kk"})
{ "_id" : ObjectId("5b6159bd32bc8e678acd6f4a"), "name" : "kk", "sr" : "Wed Aug 01 2018 14:57:01 GMT+0800 (CST)" }
• 对象
– 对象 id 是一个 12 字节的字符串,是文档的唯一标识
– {x: ObjectId() }
> db.c2.save({name:"jj",stu_id:ObjectId(),class:"nsd1804"})
WriteResult({ "nInserted" : 1 })
> db.c2.find({name:"jj"})
{ "_id" : ObjectId("5b61590132bc8e678acd6f49"), "name" : "jj", "stu_id" : ObjectId("5b61590132bc8e678acd6f48"), "class" : "nsd1804" }
内嵌 / 正则表达式
• 内嵌
– 文档可以嵌套其他文档,被嵌套的文档作为值来处理
– {tarena: {address:“Beijing”,tel:“888888”,perso
n:”hanshaoyun”
– }}
> db.c2.save({tarena:{address:"beijing",tell:8888888,person:"harry"}})
WriteResult({ "nInserted" : 1 })
> db.c2.save({ywzd:{writer:"dmy",pay:68,vers:"v2"}})
WriteResult({ "nInserted" : 1 })
• 正则表达式
– 查询时,使用正则表达式作为限定条件
– {x:/ 正则表达式 /}
> db.c2.save({jbname:"shell",rcode:/.$/})
WriteResult({ "nInserted" : 1 })
> db.c2.find({jbname:"shell"})
{ "_id" : ObjectId("5b615f4832bc8e678acd6f4d"), "jbname" : "shell", "rcode" : /.$/ }
数据类型:
字符
数值 NumberInt NumberLong
布尔 ture false
空 null
数组 [值1,值2.....值n]
日期New Date()
正则 /正则表达式/
代码function()
对象ObjectId()
数据的导入
数据的导出
数据的备份
mongodb的基本使用相关推荐
- windows安装MongoDB环境以及在pycharm中配置可视化插件
安装MongoDB数据库 参考这里 安装PyMongo python3 -m pip3 install pymongo指定版本 python3 -m pip3 install pymongo==3.5 ...
- SQL与NoSQL的区别 以MySQL与MongoDB为例
异同对比 1.语言和结构层面 SQL数据库,是基于表的,并且用结构化语言也就是SQL来定义和操纵数据.一方面,这是非常强大的:SQL是最通用和最广泛使用的选项之一,使其成为一个安全的选择,尤其适用于复 ...
- php配置mongodb扩展、安装mongodb服务教程
安装mongodb服务. 1.下载mongodb: mongodb 提供了可用于 32 位和 64 位系统的,你可以从mongodb官网下载安装. mongodb下载地址:https://www.mo ...
- MongoDB之conf配置文件详解
详细看一下mongodb配置文件. mongodb.conf # mongodb.conf# 数据库文件位置 dbpath=/var/lib/mongodb#日志文件的路径 logpath=/var/ ...
- CentOS7.4 安装mongodb
温馨提示:我的环境是腾讯云自带的CentOS7.4 x64 镜像,本地环境是win10 x64 专业版,ssh工具是用的win10 自带的cmd, 远程工具版本是Robo 3T 1.2.1 . 如果环 ...
- Centos7下安装MongoDB
简介 MongoDB 是一个基于分布式 文件存储的NoSQL数据库 由C++语言编写,运行稳定,性能高 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案 查看官方网站 MongoDB特点 模式自 ...
- php mongodb execute,php简单操作mongodb
您现在的位置是:网站首页>>PHP>>php php简单操作mongodb 发布时间:2019-09-29 16:34:25作者:wangjian浏览量:525点赞量:0 一: ...
- 【MongoDB异常】Exception authenticating MongoCredential解决方法
我们通过ideal编辑器编辑 springboot时候,出现这个错误: com.mongodb.MongoSecurityException: Exception authenticating Mon ...
- mongodb插入数据获取本次插入的mongodb id
最近接了一个别人的项目做二次开发,使用php进行mongodb的数据操作时,需要插入数据后得到相应的mongodb 中的id,简单代码如下 $data = array('test' => 'aa ...
- mongodb之备份
前言 数据库的备份非常重要 备份方式 使用Mongodb自带的运维管理工具(Ops Manager) 需要单独部署,比较麻烦和复杂 通过文件系统快照 Linux需要LVM支持 需要开启journal日 ...
最新文章
- codevs1258 关路灯(☆区间dp)
- 小作文十大必背范文:五星级真题
- 从零开始学python网络爬虫-从零开始学Python网络爬虫 PDF 下载
- 图解linux下top命令的使用
- SAML request和response的一对典型例子,供将来参考
- 传三星8英寸Galaxy Tab 3平板最早将于6月上市
- Password Creator(HTA)
- 【CF1200E】Compress Words【kmp】
- 动态规划之多重部分和问题
- matconvnet在MATLAB2013配置过程中遇到的问题
- iphone怎么重启_手机卡死了,又不能拆电池!你会怎么处理?
- 从单个静止图像进行 3d 深度重建(论文2007)
- 《现代操作系统(中文第四版)》课后习题答案 第四章 文件系统
- IEC 60335标准介绍
- JAVA导出txt文件
- 5990. 找出数组中的所有孤独数字
- 阿里云服务器购买搭建过程
- 介绍谱聚类(spectral clustering)
- 恢复Surface Pro 高级电源设置里各类配置项提高外接电源模式下的性能(外接电源莫名很卡,拔掉电源又正常,实则被降频)
- 回顾这两个月的面试总结,不断的试错不断地坚持!!你也可以的
热门文章
- php公众号模板推送开发教程,微信公众号之模板推送
- 91卫图下载影像步骤
- sketch up rbs/rbz/rb插件安装方法
- 计算机并口回路测试工具,COM口和LPT口回路环的制作与CheckIT3.0测试方法
- 批处理(DOS)获取注册表键值
- python 模型 欺诈概率_手把手教你使用Python实战反欺诈模型|原理+代码
- 做空机构为什么合法,股票做空机构gmt如何达成盈利目标
- MacOS怎么使用分区加密功能?MacOS硬盘分区加密功能使用方法
- Kali 暴力破解wifi密码
- 阿里巴巴分布式调度引擎tbschedule实战四tbschedule的配置使用