数据库(mongoDB)概述及环境搭建

  1. 动态网站中的数据都是存储在数据库中的。
  2. 数据库可以用来持久存储客户端通过表单收集的用户信息
  3. 数据库软件本身可以对数据进行高效的管理。

数据库

数据库是存储数据的仓库,可以将数据进行有序的分们别类的存储,它是独立于语言之外的软件,可以通过API去操作它。
在这里插入图片描述

数据库相关概念

在一个数据库软件中可以包含多个数据仓库,在每个数据中可以包含多个数据集合,每个数据集合中可以包含多条文档(具体的数据)
在这里插入图片描述

Mongoose第三方包

使用 Node.js操作,下载
在这里插入图片描述
开启MongoDB(注意电脑重启之后,也要重新开启MongoDB)
在这里插入图片描述
数据库连接
在这里插入图片描述

//mongoose第三方模块,用来操作数据库
const mongoose = require('mongoose');
//数据库链接
mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true, useUnifiedTopology: true})
	//链接成功
	.then(() => console.log('链接成功'))
	//链接失败
	.catch(err => console.log(err, '链接失败'))

第一次链接时,会有两个警告,通过警告对代码进行更改。
在这里插入图片描述
更改之后,就连接成功了
在这里插入图片描述
在MongoDB中不需要显示创建数据库,如果正在使用的数据库不存在,MongoDB会直接创建。

MongoDB增删改查操作

创建集合

创建集合分为两步,一是对集合设定规则,二是创建集合,创建mongopse.Schema构造函数的实例即可创建集合。
在这里插入图片描述

创建文档

创建文档实际上就是向集合中插入数据
分为两步:

  1. 创建集合实例
  2. 调用实例对象下的sava方法将数据保存在数据库中
第一种方法 创建集合以及向集合中插入文档的步骤:

创建数据库后,要有具体的集合,在集合下面才是具体的数据。
在mongoose这个对象下面,有一个Schema构造函数,创建构造函数的实例就创建这个集合的规则,在里面创建一个对象,对象里规定的就是集合。
最后是创建集合,在mongoose对象下面有一个model方法用来创建集合,里面有两个参数,第一个参数代表集合名称,第二个参数代码集合规则。这个方法,返回的是一个构造函数。
想要插入数据,就实例化这个构造函数就可以。
实例对象有一个方法sava,作用是将创建的文档插入到数据库中

//mongoose第三方模块,用来操作数据库
const mongoose = require('mongoose');
//数据库链接
//playground为数据库的名字,此时在可视化软件里没有创建也没有哦关系,会自动创建
mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true, useUnifiedTopology: true})
	//链接成功
	.then(() => console.log('链接成功'))
	//链接失败
	.catch(err => console.log(err, '链接失败'));
//创建集合规则
const courseSchema = new mongoose.Schema({
	name: String,
	authour: String,
	isPublish: Boolean
});

//使用规则去创建集合
const Course = mongoose.model('Course', courseSchema)  //在数据里的集合的名字实际为courses
//创建文档
const course  = new Course({
	name: 'node.js基础',
	author: '作者',
	isPublish: true
})
//把数据插入到数据库中
course.save();
第二种方法 创建集合以及向集合中插入文档的步骤:

在这里插入图片描述
在这里插入图片描述

//mongoose第三方模块,用来操作数据库
const mongoose = require('mongoose');
//数据库链接
//playground为数据库的名字,此时在可视化软件里没有创建也没有哦关系,会自动创建
mongoose.connect('mongodb://localhost/playground', { useNewUrlParser: true, useUnifiedTopology: true})
	//链接成功
	.then(() => console.log('链接成功'))
	//链接失败
	.catch(err => console.log(err, '链接失败'));
//创建集合规则
const courseSchema = new mongoose.Schema({
	name: String,
	authour: String,
	isPublish: Boolean
});

//使用规则去创建集合
const Course = mongoose.model('Course', courseSchema)  //在数据里的集合的名字实际为courses

//第二种方式 插入文档

Course.create({
	name: 'Java',
	authour: 'a',
	isPublish: false
}, (err, result) => {
	console.log(err);
	console.log(result);
})

关于数据库的所有操作都是异步操作

向数据库中导入数据

在这里插入图片描述
步骤:
先配置环境变量,将下面的地址(也就是mongodb数据库的安装目录,将安装目录下的bin目录放置在环境变量中):
在这里插入图片描述
写到path环境中,配置环境的时候,在path后面的每一次配置用 ; 隔开
重启命令窗口
在命令行窗口,输入命令:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值