mac下MongoDB的下载安装配置及PHP下的使用

  1. 安装
    官方下载地址:https://www.mongodb.org/dl/linux/x86_64-rhel62

我们下载的mongodb是社区版的,已经帮我们编译好,因此不需要我们在此编译,我们只需将下载的文件解压后移动到安装目录即可,比如:移动到/usr/local/mongodb。

./bin/mongod –dbpath=/usr/local/mongodb/data/ –logpath=/usr/local/mongodb/logs/log
启动mongodb到cd /usr/local/mongodb/bin
./mongod
./mongo

show dbs / show databases 查看数据库
show tables / show collections 查看表的列表
use tableName 切换数据库
db.help() 查看命令帮助
db.tableName.drop() 删除tableName表,tableName为表名称
db.dropDatabase() 删除当前切换到的数据库
db.createCollection(tableName) 创建表

隐式添加:
如果下级结构添加了,那么上级结构自动也被添加
比如:我在一个不存在的数据库下创建了一张表,那么这个数据库会被自动创建。数据表也支持隐式创建

插入数据
db.tableName.insert()

例1:往user表插入一条
db.user.insert({‘name’:’shusheng’})
db.user.insertOne({‘name’:’shusheng’})
例2:往user表插入多条
db.user.insert([{‘name’:’郭昌松’,’age’:20},{‘name’:’李志友’,’girl’:[‘李文斌,李志光’]}])
db.user.insertMany([{‘name’:’郭昌松’,’age’:20},{‘name’:’李志友’,’girl’:[‘李文斌,李志光’]}])

查询数据
db.tableName.find(where)
where:查询条件,可选
操作 格式 范例 RDBMS中的类似语句
等于 {:} db.col.find({“by”:”菜鸟教程”}).pretty() where by = ‘菜鸟教程’
小于 {:{lt:<value>}} db.col.find({"likes":{ lt:<value>}} db.col.find({"likes":{ lt:50}}).pretty() where likes < 50
小于或等于 {:{lte:<value>}} db.col.find({"likes":{ lte:<value>}} db.col.find({"likes":{ lte:50}}).pretty() where likes <= 50
大于 {:{gt:<value>}} db.col.find({"likes":{ gt:<value>}} db.col.find({"likes":{ gt:50}}).pretty() where likes > 50
大于或等于 {:{gte:<value>}} db.col.find({"likes":{ gte:<value>}} db.col.find({"likes":{ gte:50}}).pretty() where likes >= 50
不等于 {:{ne:<value>}} db.col.find({"likes":{ ne:<value>}} db.col.find({"likes":{ ne:50}}).pretty() where likes != 50

例1:db.member.find({name:’baba’})
查询name=’baba’的记录

例2:db.member.find({name:’baba’,age:30})
查询name=’baba’并且age=30的记录

例3:db.member.find({age:{$lt:26}})
查询age小于26的记录

例4:db.member.find({age:{ lt:26, l t : 26 , gt:20}})
查询age大于20小于26的记录

附:以格式化后的结构展示查询结果
db.tableName.find(where).pretty()

删除数据
db.member.remove(where,justOne)
where:删除的条件表达式
justOne:当符合条件的文档有多条时,为true只删除一条记录,为false表示全部删除,默认为false

更新数据
基本语法:db.tableName.update(where,data,upsert,multi)
where:条件表达式(更新的条件)
data:要更新的数据
upsert:为true时,表示如果根据查询条件表达式找不到记录,则将准备更新的数据插入到表中作为一条新记录,默认为false
multi:默认为false,表示只更新符合条件的一条记录,如果为true时,表示更新所有的符合条件的记录,该参数必须在含有$操作下才生效

例子的数据准备:db.member.insert({name:’baba’,age:30,sex:’男’,’money’:999999999})

默认情况下,update会覆盖整个文档(整条记录内容)
例1:db.member.update({name:’baba’},{‘money’:99999999998})
执行完上面的操作,整条记录会变成:{‘money’:99999999998}

只更改部分字段值
db.tableName.update(条件表达式,{set:修改的内容})  
例2:db.member.update({name:’baba’},{
set:修改的内容})  例2:db.member.update({name:’baba’},{
set:{‘money’:99999999998}})
执行完上面的操作,整条记录会变成:{name:’baba’,age:30,sex:’男’,’money’:99999999998}

例3:第三个参数的使用例子
db.member.update({name:’bingbing’},{name:’libingbing’,age:40},true)
如果根据{name:’bingbing’}找不到符合条件的记录,则将{name:’libingbing’,age:40}插入到数据表中作为一条新记录。

例4:第四个参数的使用例子
正确使用方法:db.member.update({name:’小锅’},{$set:{name:’火锅’,age:3}},false,true)
错误使用方法:db.member.update({name:’小锅’},{name:’火锅’,age:3},false,true)

php操作mongodb

扩展地址:http://pecl.php.net/package/mongo
文档:http://php.net/manual/zh/class.mongoclient.php
网友提供:http://www.runoob.com/mongodb/mongodb-php.html

PHP下安装

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值