nodejs分别使用MySQL和mongodb

首先需要安装MySQL 和Mongodb

安装MySQL: 参考https://blog.csdn.net/sllailcp/article/details/78863899

安装mongodb: 参考https://blog.csdn.net/sllailcp/article/details/88876948

下面的操作需要电脑上有node环境

nodejs链接MySQL数据库

1.新建文件夹demo

2.进入demo目录下,然后运行命令cnpm i mysql安装mysql

3.新建mysql.js文件并添加如下代码:

var mysql      = require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'root',
  password : '',
  database : 'lan'
});
 
connection.connect();

//增 user表里面新增一条数据  用法:connection.query(addSql, addSqlParams,function(){...})
const addSql = 'insert into user(nickname,email,password) values(?,?,?);'
const addSqlParams = ['找刘','1350033581@qq.com','123456']
// user表里新增多条数据
const addMoreSql = "insert into user(nickname,email,password) values('程咬金1','cyj1@163.com','cyj1'),('程咬金2','cyj2@163.com','cyj2');"


//删: user表里面删除一条nickname为找刘的数据
const detSql = "delete from user where nickname='找刘'";

//改:user表里面,更新nickname为王五的email和password信息 
const updateSql = "update user set email = 'wangwu@.qq.com',password = '1234567' WHERE nickname = '王五'";

//查:'SELECT * FROM user'; 查询user表中的全部数据
const searchSql = "SELECT * FROM user where nickname='王五'";


connection.query(searchSql, function (error, results, fields) {
  if (error) throw error;
  console.log(results);
});

connection.end();

依次运行增删改查命令,会发现数据库中user表中的数据会随着变化

nodejs链接Mongodb

1.新建文件夹demo
2.进入到demo文件夹,运行命令:cnpm i mongodb --S
3.打开cmd,输入命令mongod启动

3.新建mongodb.js文件并添加以下代码

var MongoClient = require('mongodb').MongoClient;
var url = 'mongodb://localhost:27017';

MongoClient.connect(url, { useNewUrlParser: true }, function (err, db) {
    if (err) throw err;
    console.log('数据库已创建');
    var dbo = db.db("dbs");
    // dbo.collection("site") 如果没有site则创建site文档

    /*// 增 insertOne:插入一条数据   insertMany:插入多条数据    
        // dbo.collection("site").insertOne
        // dbo.collection("site").insertMany
    var One =  { name: '吕布', size: '21'};
    var Many =  [
        { name: '貂蝉', size: '18', type: 'cn'},
        { name: '王昭君', size: '19', type: 'en'},
        { name: '西施', size: '20', type: 'en'}
    ];
    dbo.collection("site").insertOne(One, function(err, res) {
        if (err) throw err;
        console.log("插入成功");
        db.close();
    });*/


    /*// 查 
    var whereStr = {"name":'西施'};  // 查询条件
    var whereStr = {};  // 查询全部
    dbo.collection("site"). find(whereStr).toArray(function(err, result) { // 返回集合中所有数据
        if (err) throw err;
        console.log(result);
        db.close();
    });*/

    /*// 改:  updateOne:更新一条数据  updateMany:更新多条数据
    // var whereStr = {"name":'貂蝉'};  // 查询条件  updateOne
    // var updateStr = {$set: { "size" : "100" }};

    var whereStr = {"type":'en'};  // 查询所有type为en的条件 updateMany
    var updateStr = {$set: { "size" : "56" }};
    dbo.collection("site").updateMany(whereStr, updateStr, function(err, res) {
        if (err) throw err;
        console.log("更新成功");
        db.close();
    });*/

    //删: deleteOne:删除一条数据;   deleteMany:删除多条数据
    var whereStr = {"name":'貂蝉'};  // 查询条件 deleteOne
    var whereStr = {"type":'en'};  // 查询条件 deleteMany
    dbo.collection("site").deleteMany(whereStr, function(err, obj) {
        if (err) throw err;
        console.log("文档删除成功");
        db.close();
    });/**/
    
});


参考:https://www.runoob.com/nodejs/nodejs-mysql.html

参考:https://www.runoob.com/nodejs/nodejs-mongodb.html

Docker是一种容器化解决方案,Docker Compose可以简化多个容器的管理和部署流程。Nacos是一个用于服务发现、配置管理和动态DNS服务的开源平台。Node.js是一个基于JavaScript的开源、跨平台的运行时环境,用于构建可扩展的网络应用程序。MongoDB是一个高性能、文档型NoSQL数据库,适用于处理大量的结构化和非结构化数据。MySQL是一个开源的关系型数据库管理系统,用于存储和管理结构化数据。Redis是一个基于内存的高性能键值存储系统,用于缓存和数据持久化。Seata是一个开源的分布式事务解决方案,用于保证分布式系统中的数据一致性。 通过Docker Compose,我们可以轻松地将这些不同的组件和服务以容器化的方式部署在一台或多台服务器上。我们可以使用Docker Compose的配置文件定义每个服务的镜像、端口映射、环境变量等设置。在这个场景中,我们可以将Nacos、Node.js、MongoDBMySQL、Redis和Seata分别作为独立的服务进行定义。 使用Docker Compose可以简化部署过程,只需运行一个命令即可启动整个应用程序的容器群组。Docker会自动拉取和部署所需的镜像,启动容器,并通过网络连接各个服务。Nacos可以作为服务发现和配置中心,用于管理和注册各个服务的地址和配置信息。Node.js可以作为应用程序的后端逻辑进行开发,通过Nacos来发现和调用各个后端服务。MongoDB作为主要的数据存储,MySQL和Redis可以作为辅助数据存储和缓存。Seata可以用于管理和控制分布式事务,确保数据一致性。 总之,使用Docker Compose可以方便地将Nacos、Node.js、MongoDBMySQL、Redis和Seata等组件集成在一起,并通过容器化的方式进行部署。这样做可以极大地简化应用程序的开发和部署过程,并提供高度可扩展的架构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值