虹口基础微网站开发,百度搜索推广流程,知春路网站建设公司,陕西seo顾问服务突然想去看下MongoDB的东西#xff0c;于是有了这篇文章。其实很早以前就看过一些关于NoSql的文章#xff0c;还记得当时里面有介绍MongoDB的#xff0c;多瞅了2眼#xff0c;并且在Window下安装了MongoDB的驱动#xff0c;小玩了会。今天重新翻出来#xff0c;没成想在命… 突然想去看下MongoDB的东西于是有了这篇文章。其实很早以前就看过一些关于NoSql的文章还记得当时里面有介绍MongoDB的多瞅了2眼并且在Window下安装了MongoDB的驱动小玩了会。今天重新翻出来没成想在命令行下竟然没有能成功连接到MongoDB。一顿Baidu后发现了问题原来是上次非正常退出MongoDB导致的问题照猫画虎解决了问题贴这里以备不时之需 1、删除%MONGO_HOME%/db下的.lock文件 2、输入命令 mongod --repair 3、重启mongoDB 这里只对MongoDB的使用做一些简单记录环境配置什么的请参考MongoDB配置安装 客户端连接mongodb 在client的shell里执行mongo.exe 如何正常退出mongodb 在client的shell里use admin执行db.shutdownServer()即可 创建表 db.createCollection(zylTest) 插入记录 单条记录 db.zylTest.insert({name:zhoujy}) 多条记录 db.zylTest.insert([{a:1,b:2},{a:2,b:3},{a:3,b:4}]) 插入记录将按照Json结构来定义,若多条记录的格式不相同mongodb会自行做出处理 删除记录 单条删除db.zylTest.remove({name:zhoujy}) 全部删除db.zylTest.remove() 更新记录 $【inc】用于int类型的列加减操作 这个部分比较麻烦我们先来看【$inc】这个操作【$inc】 用于int类型的key列加减操作要是指定的要更新的key不存在则会新增该key列以下面的操作为例 如上图所示在之前的结构中并不包含【pv】这一列若第一次执行下面的操作数据库结构将发生响应的变化 db.zylTest.update({name:zhoujy},{$inc:{pv:1}}) 多次执行列Pv的值将按输入数值相加 相关命令行 只更新第一条出现的记录1 db. zylTest.update({name:a},{$inc:{pv:1}}) 更新所有符合条件的记录1;第4个参数是true db. zylTest.update({name:a},{$inc:{pv:1}},false,true) 要是更新条件找不到记录默认是不执行要是第3个参数是true则会新增一条记录,包含完整的数据结构 db. zylTest.update({name:a},{$inc:{pv:1}},false,true) 总之上面的查询相当于SQL中的 update zylTest set pvpv1 where name zhoujy $【set】用于更新指定列 $set 用于更新指定key列要是指定的要更新的key不存在则会新增该key列 相关命令行 只更新第一条出现的记录 db. zylTest.update({a:1},{$set:{b:A}}) 更新所有符合条件的记录第4个参数是true,若没有符合条件的记录则不执行任何操作当第三个参数为true的时候若找不到符合条件的记录则会新增一条记录. db. zylTest.update({a :-1},{$set:{ b :A}},false,true) update zylTest set b’A’ where a 1 $【unset】 用于删除指定的列 删除第一条b为2的记录的列A db.zylTest.update({b:2},{$unset:{a:1}}) 删除复合条件的记录的列A第3个参数没有意义 db.zylTest.update({b:2},{$unset:{a:1}},true,true) 删除所有记录的列A db.zylTest.update({},{$unset:{a:1}},false,true) 其余更新操作暂时省略 查询 返回所有记录 db.zylTest.find() 条件查询 db.zylTest.find({a:1}) db.zylTest.find({a:1,b:2}) In or not in db.zylTest.find({a:{$in:[1,3,5,8]}}) db.zylTest.find({a:{$nin:[1,3,5,8]}}) Or查询 db.zylTest.find({$or:[{a:1},{b:2}]}) db.zylTest.find({$or:[{a:{$in:[1,2,3]}},{b:3}]}) 不等条件查询 $lt();$lte();$gt();$gte();$ne() db.zylTest.find({a:{$gt:1,$lte:5}}) db.zylTest.find({a:{$gt:1,$lte:5,$ne:3}}) 限制查询 db.zylTest.find({a:{$in:[1,3,5,8]}}).limit(1) 排序 db.zylTest.find({b:2}).sort({a:-1}) 匹配查询: 这块没有看明白后面再补充吧 转载于:https://www.cnblogs.com/mfkaudx/p/3574004.html