【问题标题】:NodeJs Restful Api Using MySQl使用 MySQl 的 NodeJs Restful Api
【发布时间】:2019-04-11 08:43:10
【问题描述】:

我已经通过 MongoDB 尝试过,但是我不能在 mongoDB 中使用 JOIN Query,而且我的项目足够广泛。所以,想在 MySQL 的 node js 中创建 Restful API。 任何人都可以提出解决方案

【问题讨论】:

  • 你在使用 Mysql 在 nodejs 中寻找 CRUD 操作吗?
  • 是的,我已经尝试过了,几乎完成了,因为我也发布了我的答案。你可以建议任何比这更简单的方法

标签: mysql node.js rest


【解决方案1】:

要创建 REST API,您可以使用 express JS

var express = require('express');
var app = express();    

app.get('/', function (req, res) {
   //BELOW-CODE
});

您可以按照以下代码连接Mysql:

var mysql = require('mysql');

var con = mysql.createConnection({
 host: "localhost",
 user: "yourusername",
 password: "yourpassword",
 database: "mydb"
});

con.connect(function(err) {
 if (err) throw err;
 con.query("SELECT * FROM customers", function (err, result, fields) {
 if (err) throw err;
 console.log(result);
    );
  });

注意:安装 expressJS 框架以开始使用 快乐编码:-)

【讨论】:

    【解决方案2】:

    对于带有 NodeJS 的 MySQL,您可以使用 Sequelize,它是一种类似于 symfony 中的学说的 ORM http://docs.sequelizejs.com/

    【讨论】:

      【解决方案3】:
       `'user strict';
      var sql = require('./db.js');
      
      //Task object constructor
      var Task = function(task){
          this.task = task.task;
          this.status = task.status;
          this.created_at = new Date();
      };
      Task.createTask = function createUser(newTask, result) {    
              sql.query("INSERT INTO tasks set ?", newTask, function (err, res) {
      
                      if(err) {
                          console.log("error: ", err);
                          result(err, null);
                      }
                      else{
                          console.log(res.insertId);
                          result(null, res.insertId);
                      }
                  });           
      };
      Task.getTaskById = function createUser(taskId, result) {
              sql.query("Select task from tasks where id = ? ", taskId, function (err, res) {             
                      if(err) {
                          console.log("error: ", err);
                          result(err, null);
                      }
                      else{
                          result(null, res);
      
                      }
                  });   
      };
      Task.getAllTask = function getAllTask(result) {
              sql.query("Select * from tasks", function (err, res) {
      
                      if(err) {
                          console.log("error: ", err);
                          result(null, err);
                      }
                      else{
                        console.log('tasks : ', res);  
      
                       result(null, res);
                      }
                  });   
      };
      Task.updateById = function(id, task, result){
        sql.query("UPDATE tasks SET task = ? WHERE id = ?", [task.task, id], function (err, res) {
                if(err) {
                    console.log("error: ", err);
                      result(null, err);
                   }
                 else{   
                   result(null, res);
                      }
                  }); 
      };
      Task.remove = function(id, result){
           sql.query("DELETE FROM tasks WHERE id = ?", [id], function (err, res) {
      
                      if(err) {
                          console.log("error: ", err);
                          result(null, err);
                      }
                      else{
      
                       result(null, res);
                      }
                  }); 
      };
      
      module.exports= Task;
      

      【讨论】:

        猜你喜欢
        • 2015-10-14
        • 2014-03-27
        • 2013-12-08
        • 2017-12-22
        • 1970-01-01
        • 1970-01-01
        • 2018-11-21
        • 2016-01-30
        • 1970-01-01
        相关资源
        最近更新 更多