Mongodb基本概念

Stella981
• 阅读 359

Mongodb基本概念

  • 可以有多个数据库 对象
  • 一个数据库有多个集合(表) 数组
  • 一个集合中有多个文档(表记录)对象

Mongodb的基本操作

开启

mongod

在此命令执行的文件夹下应该有这样的一个目录/data/db,因为mongodb默认此目录为自己的数据储存目录,不然会创建失败。 如果想要修改默认数据存储目录:

mongod --dbpath=数据存储目录路径

关闭

直接敲回车

连接

mongo

退出

exit

查看显示所有数据库

show dbs

显示:

admin 0.000GB

config 0.000GB

local 0.000GB

查看当前连接的数据库

db

如果第一次开启服务器,使用db,会显示test,但是show dbs不会显示test,这是因为test里面没有数据,有了数据就会显示出来。

切换到指定的数据库,创建数据库

use 数据库名

在Node中操作Mongodb数据

第三方来操作数据:mongoose 基于Mongodb的 例子:

初始化

npm init -y

安装包

npm i mongoose


const mongoose = require('mongoose');

//连接Mongodb数据库
mongoose.connect('mongodb://localhost:27017/test', {useNewUrlParser: true});

//创建一个模型,设计数据库
//Mongodb是动态的,非常灵活,只需要在代码中设计你的数据库即可
//mongoose这个包可以让设计的编写过程变得非常简单
//我希望生成一个表叫Cat,最终它会生成小写复数的表名
//数据库中有一个文档,文档时string类型
const Cat = mongoose.model('Cat', { name: String });

//实例化一个kitty,持久化保存它
const kitty = new Cat({ name: 'Zildjian' });

kitty.save().then(() => console.log('meow'));

输出meow ,在show dbs后,输出

admin 0.000GB

config 0.000GB

local 0.000GB

test 0.000GB

此时test出现。

在执行db看当前数据连接数据库,如果不是test,就use test使当前连接的是test,然后show collections查看集合,输出cats

我们如果想要查询cats中的内容db.cats.find()命令

输出{ "_id" : ObjectId("5d78dde6505bf436340861c1"), "name" : "Zildjian", "__v" : 0 }

可以插入多条信息

for(let i=0;i<100;i++)
{
    let kitty = new Cat({ name: 'Zildjian' });

kitty.save().then(() => console.log('meow'));
}
点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
2年前
java将前端的json数组字符串转换为列表
记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表。前端数据转化与请求varcontracts{id:'1',name:'yanggb合同1'},{id:'2',name:'yanggb合同2'},{id:'3',name:'yang
Jacquelyn38 Jacquelyn38
2年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Andy20 Andy20
3年前
30分钟让你了解MongoDB基本操作
今天记录下MongoDB的基本操作,这只是最基本的,所以是应该掌握的。数据库数据库是一个物理容器集合。每个数据库都有自己的一套文件系统上的文件。一个单一的MongoDB服务器通常有多个数据库。集合集合是一组MongoDB的文档。它相当
Stella981 Stella981
2年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
2年前
MongoDB学习(1)
不管我们学习什么数据库都应该学习其中的基础概念,在mongodb中基本的概念是文档、集合、数据库,下面我们挨个介绍。数据库一个mongodb中可以建立多个数据库,MongoDB中默认数据库为"db",该数据库存储在data目录中。在MongoDB中可以创建数据库,如果你想使用MongoDB,创建数据库不是必要的。"showd
可莉 可莉
2年前
21.30 mongodb创建集合、数据管理
21.30mongodb创建集合、数据管理MongoDB创建集合:db.createCollection("mycol",{capped:true,size:6142800,max:10000})//语法:db.createCollection(name,options)name就是集合
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这