当前位置 主页 > 网站技术 > 代码类 >

    Node如何后台数据库使用增删改查功能

    栏目:代码类 时间:2019-11-21 18:05

     这篇文章主要介绍了Node如何后台数据库使用增删改查功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    无论node还是java增删改查都是一样的原理,变得是配合框架使用时候有简便方法而已。

    优化:为了维护方便这里我们把sql语句提出来放在一个对象里面,只有要改变的参数放在请求接口的router里面

    首先在routes文件夹里面创建userSql.js,在里面创建一个对象,再导出

    var SQL = {
      inset:{// 增
        actorIn:'INSERT INTO actor(first_name,last_name) VALUES(?,?)' // actor是数据库的表名 first_name,last_name是其中的两个字段名,id一般设为自增
      },
      delete:{// 删
        actorDel:'DELETE FROM actor where actor_id = ?' // 一般唯一标识是id并且自增,我改为了actor_id(最好不要变)
      },
      change:{// 改
        actorCh:'UPDATE actor SET first_name=?,last_name=? WHERE actor_id=?' //修改唯一标识actor_id为几的first_name和last_name值
      },
      check:{// 查
        actorCk:'SELECT * FROM actor', //查询所有使用*,actor是表名
        actorId:'SELECT * FROM actor WHERE actor_id=?', //查询唯一标识actor_id=x的所有字段
        actorAll:'SELECT first_name FROM actor', //查询actor表里面的所有first_name字段
        actorId:'SELECT first_name FROM actor WHERE actor_id=?' //查询唯一标识actor_id=x的所有first_name字段
      }
    }
    module.exports = SQL;

    然后我们在user.js里面导入

    var userSql = require('./userSql.js')

    一、增

    在user.js里面我们创建一个添加的router。

    router.post('/add', function(req, res, next) {
     var addValue = ['kk','MM']//参数是对应first_name,last_name的值,前端调用接口post方法是使用req.body.xx获取的参数<br>  // query()第一个是语句,第二个是参数
     mysql.query(userSql.inset.actorIn,addValue, function (error, results) { // 增
      if (error) throw error;
      res.json({
       code:0,
       data:'成功'
      })
     });
     mysql.end();//关闭mysql连接
    });

    二、删

    在user.js里面我们创建一个删除的router

    router.post('/del', function(req, res, next) {
     var delValue = 4 // 这里是删除的行唯一标识,一般是id,这里改为了actor_id
     mysql.query(userSql.delete.actorDel,delValue, function (error, results) { // 删
      if (error) throw error;
      res.json({
       code:0,
       data:'成功'
      })
     });
     mysql.end();
    });

    三、改

    在user.js里面我们创建一个修改的router

    router.post('/change', function(req, res, next) {
     var addValue = ['aa','22',3] // 前两个对应first_name,last_name,actor_id=3
     mysql.query(userSql.change.actorCh,addValue, function (error, results) { // 改
      if (error) throw error;
      res.json({
       code:0,
       data:'成功'
      })
     });
     mysql.end();
    });

    四、查

    在user.js里面我们创建一个查询的router

    router.get('/check', function(req, res, next) {
     //查询一般使用get方法,获取前端传来参数使用req.query.xx
     mysql.query(userSql.check.actorCk,1, function (error, results, fields) { // 查
      if (error) throw error;
      res.json({
       code:0,
       data:results
      })
     });
     mysql.end();
    });