当前位置:网站首页>Mongodb在node中的使用
Mongodb在node中的使用
2022-07-06 09:29:00 【社会你磊哥,命硬不弯腰】
安装mongodb
首先先认识一下这个数据库,MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
安装并配置这个数据库参考官网即可!本篇博客主要说明在该数据库与node怎样建立连接并且实现增删改查等主要功能!
安装mongoose
我们在与数据库建立连接的过程中使用的是mongoose这个第三方包!
$ npm install mongoos
设置集合结构,字段名称是表结构中的属性名称,约束的目的是保证没有脏数据!
var Schema = mongoose.Schema;
var userSchame = new Schema({
username: {
type: String,
required: true
},
age: {
type: Number,
required: true
},
mobelphone: {
type: Number
}
})
连接数据库,连接的是test数据库!
mongoose.connect('mongodb://localhost:27017/test', {
useNewUrlParser: true });
将文档结构发布为模型,mongoose会将第一个大写字符串的作为数据库的名称,并将其小写字符串复数作为一个集合!
var User = mongoose.model('User', userSchame);
var admin = new User({
username: "gaochi",
age:18,
mobelphone: "12345678"
});
增
admin.save(function (err, ret) {
if (err) {
console.log("wrong!")
}
else {
console.log(ret);
}
})
删
User.remove(
{
name: 'renjialei' },
function (err, ret) {
if (err) {
console.log("删除失败");
} else {
console.log("删除成功");
}
})
改
User.updateMany({
username: 'renjialei' }, {
age: 17 }, function (err, ret) {
if (err) {
console.log("更改失败");
} else {
console.log("更改成功");
}
})
查
User.find(
//这块写的是我们的查询条件!
/* { username: 'gaochi' }, */
function (err, ret) {
if (err) {
console.log('err!');
} else {
console.log(ret);
}
})
最后附加上几个mongodb的简单命令
mongod //开启数据库!
mongo //开启数据库之后,该命令可以将数据库和客户端连接起来!
show dbs //展示数据库集合名称
use (collections)//进入数据库集合,没有则创建!
db.(collections).find() //查找集合中的数据!
show collections //展示数据库里面的所有集合!
db.(collections).insertOne({
}) //向数据库里面添加数据!
补充一个非常重要的知识点,mongod命令可以启动mongodb程序,必须在启动命令的那个盘的根目录下创建一个/data/db的文件夹,保存我们的数据,而不是在下载mongodb的那个目录下去创建文件夹!mongo命令则在我们的项目文件下去使用,将项目和数据库连接起来!
边栏推荐
- [unsolved] 7-15 shout mountain
- Saw local status change event StatusChangeEvent [timestamp=1644048792587, current=DOWN, previous=UP]
- 7-4 harmonic average
- Solve the single thread scheduling problem of intel12 generation core CPU (II)
- SQL quick start
- LeetCode 1641. Count the number of Lexicographic vowel strings
- Eureka single machine construction
- 这116名学生,用3天时间复刻了字节跳动内部真实技术项目
- Educational Codeforces Round 122 (Rated for Div. 2)
- Codeforces Round #771 (Div. 2)
猜你喜欢
Shell_ 05_ operator
~73 other text styles
~81 long table
~74 JD top navigation bar exercise
Story of [Kun Jintong]: talk about Chinese character coding and common character sets
~87 animation
100张图训练1小时,照片风格随意变,文末有Demo试玩|SIGGRAPH 2021
Data config problem: the reference to entity 'useunicode' must end with ';' delimiter.
Fdog series (V): use QT to imitate QQ to realize login interface to main interface, function chapter.
字节跳动开源GAN模型压缩框架,算力最高节省97.8%丨ICCV 2021
随机推荐
Full record of ByteDance technology newcomer training: a guide to the new growth of school recruitment
~71 abbreviation attribute of font
Cmake Express
7-10 punch in strategy
LeetCode 1640. Can I connect to form an array
姚班智班齐上阵,竞赛高手聚一堂,这是什么神仙编程大赛?
ByteDance open source Gan model compression framework, saving up to 97.8% of computing power - iccv 2021
The QT program compiled on CentOS lacks a MySQL driven solution
Fdog series (V): use QT to imitate QQ to realize login interface to main interface, function chapter.
Basic principles of video compression coding and audio compression coding
Solve the problem that intel12 generation core CPU single thread only runs on small cores
Fdog series (VI): use QT to communicate between the client and the client through the server (less information, recommended Collection)
LeetCode 1545. Find the k-th bit in the nth binary string
Eureka high availability
How to generate six digit verification code
Codeforces Round #771 (Div. 2)
这116名学生,用3天时间复刻了字节跳动内部真实技术项目
Typescript basic operations
Li Kou leetcode 280 weekly match
(multiple methods, need to continue to see) 7-11 go deep into the tiger's Den