当前位置:Gxlcms > 数据库问题 > MongDB 操作

MongDB 操作

时间:2021-07-01 10:21:17 帮助过:5人阅读

MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。它的特点:高性能、易部署、易使用,存储数据非常方便。   安装 windows下安装
一、下载地址 https://www.mongodb.com/download-center/community 二、命令行下运行 MongoDB 服务器 为了从命令提示符下运行MongoDB服务器,你必须从MongoDB目录的bin目录中执行mongod.exe文件。  或者将bin目录配置到环境变量path中。 在c盘下创建db文件夹,终端中进入mongo的安装目录的bin下,然后终端中执行下面的命令,就可以启动mongo服务器了  > mongod --dbpath c:\db\  三、MongoDB后台管理 Shell (控制台中使用mongo) > mongo

 Mac 系统上安装


一、安装 在Mac OS上面安装MongoDB,你可以通过编译源代码来安装 ,也可以在Mac OS上使用Homebrew安装。 这里介绍使用Homebrew安装MongoDB。 首先更新Homebrew的package数据库:  $ brew update  $ brew install mongodb  二、启动MongoDB  $ mongod --config /usr/local/etc/mongod.conf  三、使用MongoDB  $ mongo 一个mongodb中可以建立多个数据库。MongoDB的默认数据库为"db",该数据库存储在data目录中。 MongoDB的单个实例可以容纳多个独立的数据库,每一个都有自己的集合和权限,不同的数据库也放置在不同的文件中。   数据库命名:通过标识符,一般是utf-8字符串,不能为空,不能用local/admin/config这三个   mongo的基础指令   mongo的基础指令
 show dbs 获取你当前所有的数据库  use dataBase_name 创建数据库(没有-创建/存在-使用)  db 指查询你当前的数据库  db.stats() 查询你当前数据库的状态  db.dropDatabase() 删除你当前的数据库  db.help() 查询帮助  db.version() 获取你当前数据库的版本  db.collection_name.help() 查询任意集合可以使用方法的帮助  db.collection_name.find() 查询你当前集合内的信息       使用 use music 创建数据库 创建数据库之后查看没有出现music, 需要写入一个文档集合album;    insert插入  db.album.insertOne({‘title’:’xxxx’}),  查看采用db.album.find();  插入多条数据insertMany([{},{},{}])
  在js 中操作 mongodb 需要  本地安装mongodb npm i monggodb -D   创建一个js文件写入下面代码 //要在 MongoDB 中创建一个数据库, //首先我们需要创建一个 MongoClient 对象,然后配置好指定的  URL 和 端口号。 // //如果数据库不存在,MongoDB 将创建数据库并建立连接 //连接数据库,创建集合 var MongoClient = require(‘mongodb‘).MongoClient; var url = ‘mongodb://localhost:27017/‘; var dbname  = ‘test‘; MongoClient.connect(url, function (err, db) {     if (err) throw err;     console.log(‘数据库已创建‘);     var dbase = db.db(dbname);          dbase.createCollection(‘site‘, function (err, res) {         if (err) throw err;         console.log("创建集合!");         db.close();     }); });   插入(增加)数据  //插入数据 //向user表中插入数据 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);     var myobj = { username: "zs", password: "123" };     dbo.collection("user").insertOne(myobj, function(err,  res) {         if (err) throw err;         console.log("文档插入成功"); //插入的数据产生的结果         console.log(res])         db.close();     }); });   插入多条数据   //插入多条数据 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);     var myobj =  [         { username: ‘lisi‘, password: ‘1111‘, type: ‘1‘},         { username: ‘wangwu‘, password: ‘222‘, type: ‘2‘}        ];     dbo.collection("user").insertMany(myobj,  function(err, res) {         if (err) throw err;         console.log("插入的文档数量为: " +  res.insertedCount);                  console.log(res)         db.close();     }); });     查询数据 //查询数据 //可以使用 find() 来查找数据, find() 可以返回匹配条件的所有数据。 //如果未指定条件,find() 返回集合中的所有数据。 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);     dbo.collection("user").  find({}).toArray(function(err, result) { // 返回集合中所有数据         if (err) throw err;         console.log(‘查询成功‘+result.length);//结果为数组         db.close();     }); });   查询指定条件 //查询指定条件的数据 //查询用户名为 lisi的用户 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);      var whereStr = {"username":‘lisi‘};  // 查询条件      dbo.collection("user").find(whereStr).toArray(function(err, result) {         if (err) throw err;         console.log(‘查询lisi成功‘+result);         db.close();     }); });       更新数据   //更新一条数据 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);     var whereStr = {"username":‘lisi‘};  // 查询条件     var updateStr = {$set: { "password" : "test" }};     dbo.collection("user").updateOne(whereStr, updateStr,  function(err, res) {         if (err) throw err;         console.log("文档更新成功");         db.close();     }); }); // 更新多条数据 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);     var whereStr = {"username":‘lisi‘};  // 查询条件     var updateStr = {$set: { "password" : "test222" }};     dbo.collection("user").updateMany(whereStr,  updateStr, function(err, res) {         if (err) throw err;         console.log("文档更新成功");         console.log(‘插入多条成功 ,‘+res.result.nModified  + " 条文档被更新");         db.close();     }); });   排序   //排序 使用 sort() 方法,该方法接受一个参数,规定是升序(1)还是降序(-1)。 //{ _id: 1 }  // 按 _id 字段升序 //{ _id: -1 } // 按 _id 字段降序 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);     var mysort = { _id: 1 };      dbo.collection("user").find().sort(mysort).toArray(function(err, result) {         if (err) throw err;         console.log(result);         db.close();     }); });     查询分页   //如果要设置指定的返回条数可以使用 limit() 方法,该方法只接受一个参数, //指定了返回的条数。   // limit():读取两条数据 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);      dbo.collection("user").find().limit(2).toArray(function(err, result) {         if (err) throw err;         console.log(result);         db.close();   }); }); //如果要指定跳过的条数,可以使用 skip() 方法。 //skip(): 跳过前面两条数据,读取两条数据 MongoClient.connect(url, function(err, db) {     if (err) throw err;     var dbo = db.db(dbname);      dbo.collection("user").find().skip(2).limit(2).toArray(function(err, result) {         if (err) throw err;         console.log(result);         db.close();   }); });    

MongDB 操作

标签:conf   插入   mongo   端口   database   one   mod   stat   独立   

人气教程排行