今天实现Node.js连接mongo数据库,实现增删改查功能
先在vs或者其他编译器终端安装mongodb
npm i mongodb
建立一个js文件
先写如下代码
const mongodb = require('mongodb')
const MongoClient = mongodb.MongoClient;
//连接mongodb
const dbUrl = 'mongodb://localhost:27017'
//默认的本机地址,访问自己的,你也连接别人的
一.增
MongoClient.connect(dbUrl,function(err,client){
if(err){
console.log(err)
return
}
console.log('连接成功')
const testDb = client.db('test') //db就是选取数据库的
//collection选取哪张表
testDb.collection('lsh').insert({name:'哈哈'},function(err,res){
if(err){
console.log(err)
return
}
console.log(res)
})
client.close()
})
二.删
MongoClient.connect(dbUrl,function(err,client){
if(err){
console.log(err)
return
}
console.log('连接成功')
const testDb = client.db('test') //db就是选取数据库的
//collection选取哪张表
testDb.collection('lsh').remove({name:'哈哈'},function(err,res){
if(err){
console.log(err)
return
}
console.log(res)
})
client.close()
})
三.改
MongoClient.connect(dbUrl,function(err,client){
if(err){
console.log(err)
return
}
console.log('连接成功')
const testDb = client.db('test') //db就是选取数据库的
//collection选取哪张表
testDb.collection('lsh').update({name:'lsh'},{$set:{name:'哈哈'}},function(err,res){
if(err){
console.log(err)
return
}
console.log(res)
})
client.close()
})
四.查
MongoClient.connect(dbUrl,function(err,client){
if(err){
console.log(err)
return
}
console.log('连接成功')
const testDb = client.db('test') //db就是选取数据库的
//collection选取哪张表,toArray转化为数组
testDb.collection('lsh').find({}).toArray(function(err,res){
if(err){
console.log(err)
return
}
console.log(res)
})
client.close()
})
再整理一些终端的mongodb基本命令
1.db.help()//帮助
2.db.stats()//统计
3.show abs 显示数据库
4.use 数据库名称//切换数据库
5.show collections 或者show tables//显示当前数据库有哪些表
6. db.数据库表名.find({})//将表中所有数据全部查询出来
db.数据库表名.find({sex:’男’})//将表中所有男同学查询出来
db.数据库表名.find({age:{$lt:18}})//将表中age小于18全查询出来
db.数据库表名.find({age:{$lte:18}})//将表中age小于等于18全查询出来
db.数据库表名.find({age:{$gt:18}})//将表中age大于18全查询出来
db.数据库表名.find({age:{$gte:18}})//将表中age大于等于18全查询出来
db.数据库表名.find({}).limit(5)//返回前五条数据
db.数据库表名.find({}).skip(5)//跳过前五条数据
db.数据库表名.find({}).skip(0).limit(3)
db.数据库表名.find({}).skip(3).limit(3)
db.数据库表名.find({}).skip(6).limit(3)
db.数据库表名.find({$and :[{name:’’},{age:18}]})//全部满足才能查询出来
db.数据库表名.find({$or :[{name:’’},{age:18}]})//有一个满足就行
相当于分页,每一页三条不一样的数据
后面可以跟.pretty(),让数据好看一点
7.db.createCollection(‘’)//创建一个集合,尽量不要用数字
8.db.数据库表名.insert({name:’s’ }) //往表中插入数据
db.数据库表名.insert([{}.{},{}])//通过数组方式,插入多条数据
9.db.数据库表名.update({name:’’},{$set:{age:23}}) //name只是查询的哪一个,$set是具体改什么
10.db.数据库表名.remove({age:34}) //把age等于34的全删除了
11.db.数据库表名.find({}).sort({age:1})//按照age排序,1为正序,-1为倒序